python3爬虫实践(正则+xpath 站长素材免费简历模板爬取)

import requests
from lxml import etree
import re
import os


def url_values():
    tree = etree.HTML(response)
    list_jianli_Download_page = tree.xpath(("//div[@class='bggray clearfix pt20']/div[3]//div[@id='container']/div"))
    # print(len(list_jianli_Download_page))
    for url in list_jianli_Download_page:
        jump_url.append(url.xpath('./a/@href')[0])


def Download_page():
    for downlaodurl in jump_url:
        response = requests.get(url=downlaodurl,headers=headers).text
        tree = etree.HTML(response)
        rex = "http://.*?.rar"
        re_value = re.findall(rex,response)
        downlaod_url.append(re_value[0])
        # download_url = tree.xpath('//div[@class="bggray clearfix"]/div[2]//div[@class="down_wrap"]/div[2]/ul/li/a/@href')
        name = tree.xpath('//div[@class="ppt_tit clearfix"]/h1/text()')[0]
        file_name.append(name.encode("iso-8859-1").decode("utf-8")+'.rar')


def get_file():
    a = 0
    for name,url in zip(file_name,downlaod_url):
        file = requests.get(url=url,headers=headers).content
        if requests.get(url=url,headers=headers).status_code == 200:
            a = a + 1
        else:
            print(f"文件{filename}下载失败")
            continue
        filename = "简历模板/"+ name
        with open(filename,'wb') as fp:
            fp.write(file)
            print("下载完成",filename,a)


if __name__ == "__main__":
    jump_url = []
    downlaod_url = []
    file_name = []
    if not os.path.exists('./简历模板'):
        os.mkdir('./简历模板')
    url = "http://sc.chinaz.com/jianli/free.html"
    headers = {
        "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36"}
    response = requests.get(url=url,headers=headers).text
    url_values()
    Download_page()
    print(len(downlaod_url))

笔记思路入门参考

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

霖宇长清

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值