2019-5-5 更新:
警告:使用ip代理并且不要带个人cookie!
警告:使用ip代理并且不要带个人cookie!
警告:使用ip代理并且不要带个人cookie!
我个人已经无法登陆http://zhipin.com ,登陆刷新一次就是403被封ip,但是换ip后登陆刷新马上又被封。目测是ip+账号被网站拉黑了。提示信息是说24小时解封,但是这种情况从5月4号就已经出现。
-----------------------------------------------------------------------------------------
导读:直聘网(Boss直聘)BOSS直聘-互联网招聘神器!和拉勾网 算是我所知道的互联网招聘信息较多较规范的两个网站了,所以想用来练一下简单的爬虫
目前功能非常简单,主要使用了requests和bs4两个库
大致思路:
- 首先登陆Boss直聘,通过开发者模式获取cookie(未登录获取到的不是最新的信息)
- 使用requests爬取职位列表页面
- 使用bs4对html数据进行解析,提取关键词和岗位JD的链接,爬取二级页面真正的工作经验要求(有的hr最外层写工作经验不限,但是在JD中又会补充要求2年以上或者3年以上)和岗位描述
- 将数据写入Excel表中
- 手动:将所有Excel表数据复制到同一个Excel文件中完成合并
问题:Boss直聘网的反爬策略大致为同一个ip在一定时间内访问90次左右就需要进行滑动滑块进行人机验证(待解决)
解决方案1:使用代理ip,绕过ip次数限制
结果:免费代理响应时间过长,报错
解决方案2:爬取90条之后使用 time.sleep() 停止一段时间
结果:不清楚网站时间限制策略,暂不采用
解决方案3:使用 selenium 库进行滑动滑块
结果:成功
待实现:
将导出的数据整合为一个Excel文件
import requests
from bs4 import BeautifulSoup
import time
import xlrd
import xlwt
import random
import datetime
# url:域名+地级市+区/县级市,以 '/' 结尾,例:https://www.zhipin.com/c101210100/b_%E6%BB%A8%E6%B1%9F%E5%8C%BA/
# job:岗位,例 PHP
# cookie:登录后的cookie,F12打开开发者模式,选择Network,点击Doc找到Request Headers下面的cookie,复制字符串
# path:Excel文档保存的路径,以 '/' 结尾
def spider4boss(url, job, cookie, path, page_start):
# header头信息 模拟火狐浏览器,加上自己的 cookie
headers = {
'user-agent': 'Mozilla/5.0',
'cookie': cookie
}
# 打开Excel表 定义sheet 定义表头
workbook = xlwt.Workbook(encoding='utf-8')
sh

本文讲述了作者在使用Python爬虫抓取Boss直聘网站招聘信息时遇到的账号IP被封禁问题,强调了使用IP代理避免携带个人cookie的重要性。在尝试了多种解决方案后,如使用time.sleep()、免费代理和selenium进行滑动验证,最终通过selenium成功绕过反爬策略。目前实现了爬取职位信息并存储到Excel,但仍有待完善数据整合到一个Excel文件的功能。
最低0.47元/天 解锁文章

997

被折叠的 条评论
为什么被折叠?



