selenium+scrapy爬取前程无忧职位

本文介绍了如何结合selenium和scrapy爬取前程无忧网站上的Python职位信息。在爬取过程中,由于网页动态加载,普通请求无法获取职位详情,故采用selenium模拟浏览器行为。通过动态添加start_urls,抓取每页的职位详情页链接,然后利用scrapy快速访问这些详情页,获取大量职位数据。在实际操作中,前50页的爬取就获得了2500多条职位信息,耗时约1分钟。
摘要由CSDN通过智能技术生成

目标:

	爬取前程无忧网站职位关键字为python的职位信息

分析

首页的链接地址:

‘https://search.51job.com/list/000000,000000,0000,00,9,99,Python,2,1.html’

不同页码对应url

‘https://search.51job.com/list/000000,000000,0000,00,9,99,Python,2,page.html’ 其中page对应页数

存在的问题

  1. 对第一页爬取数据发现不能解析职位信息:将获得的响应保存为html打开后发现的确没有职位信息
  2. 总页数随着时间会发生变化:不能将页数固定
  3. 列表页和详情页允许域名不同:域名注意

问题解决

1.考虑使用selenium模拟浏览器访问获得职位信息和总的页数
2.获得页数后动态添加 start_urls列表页url
3.selenium控制浏览器访问列表页,每访问一次列表页将该页所有职位详情页面保存在列表中
4.职位详情页不需要使用selenium因此速度很快

代码实现

import scrapy
from lxml import etree
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.we
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值