python3-爬取驱动天空网站驱动

Python admin 4个月前 (05-02) 198次浏览 0个评论

python3-爬取驱动天空网站驱动

'''
本项目爬取 驱动天空的全部 打印机驱动

'''
import requests
from bs4 import BeautifulSoup
import re
from lxml import etree


def again(html):
    req = requests.get(html)
    req.encoding = 'gbk'   # 设置网页编码
    req = req.text

    soup = BeautifulSoup(req,'lxml')
    list = soup.find_all('td',width="50%")    # 获取打印机列表页面源码

    i = 0

    while i <= 14:
        t = re.search('(?<=/>).*(?=)', str(list[i]))  # 正则循环取出标题
        biao =  str(t.group())
        title = biao.strip()  # 去除字符串中的空格

        lian = re.search('(?<=../).*(?=">)', str(list[i]))  # 正则循环取出链接
        lianjie = "https://www.drvsky.com/" + str(lian.group())

        req1 = requests.get(lianjie)  # 访问下载页面
        req1.encoding = ('gbk')
        req1 = req1.text
        kk = etree.HTML(req1)

        link1 = kk.xpath('//*[@id="download"]/a[1]/@href')  # 获取链接
        link1title = kk.xpath('//*[@id="download"]/a[1]/font/text()')  # 获取链接标题
        link1title = str(link1title[0])
        link1title1 = link1title.strip('点击进入下载页->')

        d = str(link1[0])
        link = "https://www.drvsky.com/"+ d.strip('..')  # 下载链接页面


        req2 = requests.get(link)
        kk1 = etree.HTML(req2.text)
        link2 = kk1.xpath('//*[@id="main"]/table/tr/td[2]/table/tr[2]/td/a/@href')  # 获取绝对下载地址

        print("正在下载" + title+ link1title1)

        html1 = requests.get(link2[0])       # 下载链接文件
        wenjian = title + link1title1
        wenjian1 = wenjian.replace('/', '')

        with open("C:/Users/Administrator/Desktop/dayinji/" + wenjian1 +".exe", "wb")as f:
            f.write(html1.content)

        i += 1


def web():
    i = 229
    while i <= 298:
        html = "https://www.drvsky.com/sort/5_" + str(i)+".htm"
        again(html)
        print("第一页下载完成!开始第二页下载.....")
        i+=1

if __name__ == '__main__':
    web()

小泉博客|本站的文章和资源来自互联网或者站长的原创,按照 CC BY -NC -SA 3.0 CN
协议发布和共享,转载或引用本站文章应遵循相同协议。如果有侵犯版权的资源请尽快联系站长,我们会在24h内删除有争议的资源。转载请注明原文链接:python3-爬取驱动天空网站驱动
喜欢 (0)
发表我的评论
取消评论
表情 加粗 删除线 居中 斜体 签到