如何使用Python抓取移动端APP的评论(小白篇)
背景介绍
女朋友做毕业论文需要抓取移动端APP的评论,由于移动端APP无法在PC端登录,她之前使用的爬虫软件已经无从下手,本来她是想要一个个码字到电脑上面的。我听到她的想法很震惊,对她的毅力很是敬佩,但是想到还需要她帮我做饭,就只能帮她完成这个工作,身为懒人的我,当然不能一个个码字到电脑上面咯。
实现原理
- 手机通过PC热点连接互联网
- 使用Fiddler抓取通过PC热点网络传输发送与接收的数据包
- 将抓取到的http包进行数据清理,获取移动APP的评论
基础知识:
Fiddler是强大的抓包工具,它的原理是以web代理服务器的形式进行工作的。代理就是在客户端和服务器之间设置一道关卡,客户端先将请求数据发送出去后,代理服务器会将数据包进行拦截,代理服务器再冒充客户端发送数据到服务器;同理,服务器将响应数据返回,代理服务器也会将数据拦截,再返回给客户端。通过代理可以实现将网络传输发送与接收的数据包进行截获、重发、编辑等操作,也可以用来检测流量。
知识来源:Fiddler工具使用介绍一
操作步骤
- 通过PC端Fiddler软件进行抓包
1.1 配置PC端Fiddler软件与手机端WIFI代理
参考blog:Python3.x+Fiddler抓取APP数据
1.2 通过Fiddler的过滤器功能将url进行筛选
这里以快手APP的评论为例,通过Fiddler可以发现评论url的关键字为“/rest/n/comment/list”
通过配置相应的过滤器便可以筛选出需要的http包
1.3 通过Fiddler将抓取的http包导出,准备进行数据清洗
通过导出所有会话,将http的json格式的原始记录导出,导出格式选择“Raw Files”, - 通过Python对导出的文件进行清理,清理出我们所需要的评论信息
Tips:由于http包中的信息是以json格式记录的,可以通过json解析器清晰的了解http包中的数据结构。
推荐使用JSON在线解析
不多说了,直接上代码
import urllib.request
import json
import re
kuaishouCommentClass =