问下手机app爬虫的开发:这个app的请求怎么截获不了

学爬虫有段时间了,这周打算开发一个爬虫去爬取一个手机app上的涩图。
我想爬虫都是去爬取一个又一个url,这样是不是说只要我能拦截到手机发出的http请求,我就能把请求复制一份,自己发出去,能自己接收response


首先设置我的小米路由器,在 常用设置里,安全中心设置控制模式为白名单模式,(这龟儿子的模式让局域网内主机不能互通)


到后来截获请求的时候发现一个问题,这个app发出的请求居然找不到,
我换了bilibili试试,可以截获,但是这个app不按常理出牌,wireshark找不到他的请求,有没有哪个小伙伴知道怎么回事

首先,写一个简单的爬虫是比较简单的。例如 scrapy 这个工具 就非常棒,可以短平快地造一个工具。

接下的问题会变得非常复杂:

  1. 网站有认证怎么办?
  2. 网站要注册怎么办?
  3. 网站限流怎么办?
  4. 网站反爬虫怎么解决?

针对手机app爬虫,首先要确定它的消息协议,然后就是常规操作了。如果没开放api的 话,比较通用的方式是模拟浏览器请求,这也是大部分爬虫所要实现的。


手机app如果是Android的话,可以直接反编译看里面的调用逻辑。你说wireshark看 不到它的请求,在路由器上肯定可以看到的。猜测可能的原因是wireshark filter expression 没匹配到,建议抓全量的包再过滤。

用selenium来写爬虫,就像在本地浏览器注入JS插件一样,这样就可以直接跳过无聊的后台攻防。

可以看看我的文章:https://manateelazycat.github.io/linux/2019/11/25/breaking-captcha.html

我一直认为自己写一个简单的浏览器,是对抗所有爬虫攻防最佳的手段,因为防御方会认为你就是在浏览器中正常操作。

1 个赞

你确定能爬手机app吗

爬虫没法爬手机APP吧,这个只能用自动化脚本工具在android模拟器或真机上装好APP,实际操作APP,取到数据,再通过自动化脚本把数据发到你的服务器上保存。

这个感觉已经脱离爬虫的定义了,属于自动化软件(或者说外挂)

你这个感觉不算爬虫,叫抓包。手机开代理,电脑开抓包工具,https需要装证书才能抓。

另:注意身体

用这些可以爬app?

我指的是自动化软件,具体为:手机(或模拟的)先要root,然后装一个可以远程执行自动化脚本的app,脚本自动打开指定app,通过找色点击或找图点击或找字点击,进入到app的指定页面,把页面截图保存到指定位置,然后在提取数据。

某些app会禁止截图,可以破解这个限制,但我不知道怎么破。

我了解的,很多game外挂都是这么操作的,这个 可以远程执行自动化脚本的app,我用过的有 按键精灵,Xscript,其中按键精灵限制太多了,Xscrip是很不错,可惜的是现在彻底倒闭了,搜索都搜不出来了,我指的是一个 基于lua的手机脚本开发平台,现在叫Xscript的编程语言有很多,都不是我最初认识的那个了

网易的AirTest挺好用