xpath解析简历压缩包 爬取下载压缩包到本地

该博客演示了如何使用Python的requests和lxml库从网址https://sc.chinaz.com/jianli/biaoge.html中抓取并下载免费的简历模板压缩包。首先,通过XPath获取模板下载链接,然后下载二进制的rar文件内容,最后将其保存到本地。爬取过程中考虑了编码问题,并成功将文件保存为指定名称的rar文件。
摘要由CSDN通过智能技术生成

爬取网站:https://sc.chinaz.com/jianli/biaoge.html  中的模板下载到本地(压缩包.rar格式) 

这里只挑了一个免费的进行下载

注意:

压缩包为二进制格式数据,需要使用content来接收

 

# 爬取网站:https://sc.chinaz.com/jianli/biaoge.html 
#   中的模板下载到本地(压缩包.rar格式) 这里只挑了一个免费的进行下载
import requests
from lxml import etree
if __name__ == '__main__':
    headers = {
        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36"
    }
    url = "https://sc.chinaz.com/jianli/biaoge.html"
    response = requests.get(url=url, headers=headers).text
    tree = etree.HTML(response)
    # 获取第一次请求到的页面--简历模板汇总页面
    new_url_arr = tree.xpath('//div[@class="sc_warp  mt20"]/div/div/div[4]/a/@href')
    # 获取需要爬取文件的下载地址所在的地址
    new_url = new_url_arr[0]
    new_response = requests.get(url="https:"+new_url, headers=headers)
    # 对请求对象的编码格式进行处理
    new_response.encoding = new_response.apparent_encoding
    # with open('./jianli.html', 'w', encoding=new_response.apparent_encoding) as fp:
    #     fp.write(new_response.text)
    # print(new_response)
    new_tree = etree.HTML(new_response.text)
    # 获取下载地址
    download_path_arr = new_tree.xpath('//div[@class="clearfix mt20 downlist"]/ul/li/a/@href')
    # 获取对应的二进制格式的数据
    file_rar = requests.get(url=download_path_arr[0], headers=headers).content
    # 获取文件名
    file_name = new_tree.xpath('//div[@class="ppt_tit clearfix"]/h1/text()')[0]
    # 持久化存储
    # 设置文件存储地址
    file_save_url = './第三章:数据解析/code/'+file_name+'.rar'
    with open(file_save_url, 'wb') as fp:
        fp.write(file_rar)
    print('爬取成功!')

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值