yzdlkxkl 2022-01-28 07:14 采纳率: 88.9%
浏览 62
已结题

xpath方法爬取简历模板https://sc.chinaz.com/jianli/

这个运行出来什么文件都没有,直接就结束了,能看下是哪里出现了问题吗?

img


# 需求:下载简历模板(分页)https://sc.chinaz.com/jianli/
import requests
from lxml import etree
import os
# 爬取首页源码
if not os.path.exists('./all_resume_jar'):
    os.mkdir('./all_resume_jar')
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:96.0) Gecko/20100101 Firefox/96.0'
}
count = 1
for count in range(1, 3):
    url = 'https://aspx.sc.chinaz.com/query.aspx?keyword=%E5%85%8D%E8%B4%B9&issale=&classID=864&page={}'.format(count)
    page_text = requests.get(url=url, headers=headers).text
    tree = etree.HTML(page_text)

    div_list = tree.xpath('//div[@class="main_list jl_main masonry"]/div')
    for div in div_list:
        detail_url = 'https:'+div.xpath('./a/@href')[0]
        title = div.xpath('./p/a/text()')[0]+'.rar'
        title = title.encode('iso-8859-1').decode('gbk')  # 解决中文乱码问题
        detail_page_text = requests.get(url=detail_url, headers=headers).text
        detail_tree = etree.HTML(detail_page_text)
        rar_download_href = detail_tree.xpath('//ul[@class="clearfix"]/li[9]/a/@href')[0]
        rar_download_data = requests.get(url=rar_download_href, headers=headers).content
        rar_path = './all_resume_jar/'+title
        f1 = open(rar_path, 'wb')
        f1.write(rar_download_data)
        print(title, '下载完成第'+str(count)+'页')
        f1.close()

  • 写回答

1条回答 默认 最新

  • 陈.py 2022-01-28 09:25
    关注

    我发现etree之后xpath路径有变化,我打印出page_text后重新找了xpath路径,之后成功爬到了
    第18行改为div_list = tree.xpath('//*[@id="container"]/div')就可以了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 2月5日
  • 已采纳回答 1月28日
  • 修改了问题 1月28日
  • 创建了问题 1月28日

悬赏问题

  • ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
  • ¥15 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景