爬取网站:阿里巴巴招聘 使用python3.6 urllib 正则
需求:爬取指定工作地点的岗位名称.
import json from urllib import request headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36", } # 刚开始的url是 url=https://job.alibaba.com/zhaopin/positionList.htm?keyWord=cHl0aG9u&_input_charset=UTF-8& for i in range(10): url = "https://job.alibaba.com/zhaopin/socialPositionList/doList.json?pageSize=%d" % (i) # 获取 html 页面 req = request.Request(url, headers=headers) response = request.urlopen(req) content = response.read().decode('utf-8') # read 读取所有内容 decode 解码 # 获取的时json数据 data = json.loads(content) # 装换成字典 # print(data) datas = data.get('returnValue') data_list = datas['datas'] # 拿到字典 for data_job in data_list: # print(data_list) job = data_job['name'] print(job)
- 爬虫是入门级别的, 非常简单. 但是在爬的过程中也遇到了些问题:
1> 刚开始爬取的url是直接复制的 浏览器url输入框里面的url, 后来发现这个url爬取的html页面没有我想要爬取的信息.
2> 查资料发现 我需要爬取的信息是 Ajax 动态生成的. 需要爬取的是 动态生成的Ajax页面.
3> 最后通过抓包工具拿到了这个 Ajax动态生成的 json 页面.成功的抓取到了想要的信息.
非常简单的爬虫小案例, 写下来主要是想记录自己踩过的小坑! 大神请忽略.