爬取掌阅app免费电子书数据

主要介绍如何抓取app数据及抓包工具的使用,能看到这相信你已经有爬虫基础了

编不下去了,主要是我懒,直接开干吧!

 

一.使用环境和工具

  windows + python3 + Jsonpath + Charles + MuMu模拟器

二.下载工具

  Charles下载:https://www.charlesproxy.com/latest-release/download.do

  MuMu模拟器:http://mumu.163.com/baidu/

三.安装及配置工具

  Charles

    安装,直接傻瓜式安装就行

    配置:

      1.打开Charles->点击Help->SSL Procying->Install Charles Root Certificate,即可进入证书安装界面

        

      2.安装证书->下一步->将所有的证书都放入下列存储(P)->浏览->受信任的根证书颁发机构->确定->下一步->完成

        

        

      3.可设置端口号,一般为默认(如果系统没有其他软件与8888端口冲突,可忽略该步骤)

        

      4.设置SSL代理(如果不设置,后面请求会是有很多443)

          Proxy -> SSL Proxying Settings -> Add

        

        输入端口号443,点击OK

        

        出现下面界面就添加成功了

        

  

   MuMu模拟器

    安装:同样是傻瓜式

    配置:

      1.设置代理

        

      2.获取电脑ip  ,  win + r -> 输入cmd -> 回车

        

      3.安装证书

        在虚拟器打开浏览器,输入cals.pro/ssl自动下载证书,下载完成后,点击打开

        

    不出意外的话,工具安装和配置到这里就可以编写爬虫代码了

四.测试及找数据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&currentPage=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)

 

返回数据结果:

  

到这里,就可以爬取大部分app数据了

  如有问题,欢迎交流

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
爬取大众点评App数据,首先需要明确目标,确定要爬取的是哪些数据。 在开始之前,需要安装一个网络爬虫框架,例如Python中常用的Scrapy或者Beautiful Soup。接着,需要使用HTTP请求模块发送请求,并获取服务器返回的响应数据。 大众点评App数据分布在多个页面上,因此需要先获取数据的URL链接。可以利用浏览器的开发者工具或抓包工具分析App的网络请求,找到返回所需数据的请求URL。然后,可以通过发送HTTP请求获取到这些数据。 在发送请求时,需要模拟App的用户行为,例如添加User agent头信息,模拟不同设备类型的请求。通过观察请求的返回数据,可以找到相应数据的位置和格式,然后使用相应的方法提取所需数据。 获取到数据后,可以将其存储到本地文件或数据库中,以备后续分析和使用。在存储时,可以选择使用CSV、JSON或者数据库等形式。 需要注意的是,任何爬取行为都需要遵守相关法律法规,尊重网站的规则和隐私政策。在大众点评App数据爬取中,应尊重目标网站的Robots协议,并保持对网站的正常访问频率,避免给目标网站带来不必要的压力。 最后,数据爬取是一个持续的过程,网站结构和规则可能会随时变化,因此要及时调整爬虫的代码以适应变化。同时,需要注意数据的合法性和使用方式,遵循数据使用的道德和法律规定。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不止于python

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值