不出意外的话,工具安装和配置到这里就可以编写爬虫代码了
四.测试及找数据api接口
1.首先要打开Charles,再打开模拟器,下载掌阅app,打开模拟器,搜索免费
2.再看Charles软件,会发现左边的选项框中多了,一堆请求地址,随便点击一个,发现这个返回的数据和看到的好像不一样
3.再点下一个,再看看,哎,这个返回的数据好像挺多的,但是有编码问题看不出来是什么
4.复制请求地址
5.将请求地址在浏览器中打开,现在就可以看出来是什么了,会发现这些数据就是我们想要的数据
6.在验证一下,打开掌阅往下滑,会发现Charles中多了好多长的差不多的请求地址,这就证明猜测是正确的
五.编写爬虫程序
这里我用的是requests模块,只是开了个头
import requests import jsonpath import json # 经分析得知 # pageSize:表示的是每页返回多少条数据,currentPage:表示的是页数 url = \'https://ah2.zhangyue.com/zybook3/u/p/api.php?Act=searchMultipleV3&keyword=%E5%85%8D%E8%B4%B9&type=book,category,activity,relatedSearch,author,user&pageSize=500¤tPage=1\' # 请求头 head= { "Host": "ah2.zhangyue.com", "Connection": "Keep-Alive", "Accept-Encoding": "gzip", "User-Agent": "okhttp/3.9.0" } # 携带请求头请求数据 response = requests.get(url,headers = head) # 将json数据转为字典 content = json.loads(response.text) # 使用jsonpath查找元素 res = jsonpath.jsonpath(content,\'$.body.book.datas\') # 遍历取出每本书的详细信息 for book in res[0]: print(book)