![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/9f773bddb7b6922a544406371c09b477.png#pic_center)
第一步:导入工具库
import requests,json,csv,time
第二步:爬取数据
因为拉勾使用异步加载方式对数据进行了封装,所以不能直接用requests
库的get
或post
方法,而是使用session
会话。
构建session会话
session = requests.session()
构建请求头
headers = {
'referer' : 'https://www.lagou.com/jobs/list_%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90?&px=default&city=%E5%85%A8%E5%9B%B',
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36'
}
模拟浏览器向网站发起请求
session.get('https://www.lagou.com/jobs/list_%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90/p-city_0?px=default',headers=headers)
模拟拉勾网请求内部数据
url = 'https://www.lagou.com/jobs/positionAjax.json?px=default&needAddtionalResult=false'
kd = input("请输入你想查找的岗位:")
for i in range(1,30):
print(f'开始爬取第{i}页')
data = {
'first': 'false',
'pn': str(i)