活着就是为了改变世界。网站首页详情 记录一次手机app数据爬取的经历(Fiddler(手机抓包)+tasker(定时启动app)+夜神模拟器) # 1. Fiddler配置及抓包 先配置好fiddler和手机(模拟器也可以),然后用手机或者模拟器运行app,用fiddler抓包找到自己想要的内容,然后可以自定义script保存数据。(实属无奈,用python模拟不了一些东西) 电脑最好是笔记本,这样能和手机保持统一局域网内;其他不多说,直接说步骤了。 ## 一.对PC(笔记本)参数进行配置 ### 1. 配置fiddler允许监听到https(fiddler默认只抓取http格式的) 打开Fiddler菜单项Tools->TelerikFiddler Options->HTTPS, 勾选CaptureHTTPS CONNECTs,点击Actions, 勾选Decrypt HTTPS traffic和Ignore servercertificate errors两项,点击OK(首次点击会弹出是否信任fiddler证书和安全提示,直接点击yes就行),见图:  ### 2 配置fiddler允许远程连接 上一步窗口中点击Tools->TelerikFiddler Options->Connections,勾选allow remote computers to connect,默认监听端口为8888(下图Fiddler listens on port就是端口号),若端口被占用可以设置成其他的,配置好后要重新启动fiddler,如下图:  点击完成之后,PC端配置完成,接下来开始配置手机端,以安卓为例,iOS方法同安卓; ## 二.对手机端进行参数配置 首先要保证手机和电脑都处于同一个网络; 然后要知道电脑的ip地址(当然这个电脑是安装fiddler的电脑),电脑ip地址可通过cmd,输入ipconfig查询,或网络共享中ipv4找到,我的是192.168.103.53, 再者要知道fiddler的端口号,Tools->TelerikFiddler Options->Connections,port中值就是端口号,一般默认为8888;接下来开始操作手机; ### 1.**第一步**:手机和电脑连接同一个网络,打开手机浏览器,输入http://ip:端口号,点击前往;见下图:  ### 2.**第二步**:前往之后会跳转到证书下载页,见下图: 点击FiddlerRootcertificate下载证书;  ### 3.**第三步**:点击下载之后,安装证书并起个名字,随便写就行,点击确定;  ### 4.**第四步**:要求设置一个手机密码,自己设置一个,记住密码就行,最后不用了去系统-安全-密码中去掉即可;  ### 5.**第五步**:更改手机无线网的代理 手机系统设置-无线网-点击高级,代理选择手动,主机名就是fiddler的电脑ip地址,端口号,就是fiddler的端口号,与浏览器中ip:端口号保持一致,点击确定即可,模拟器手机系统设置-无线网长按点击修改网络进入下图   ### 6.操作手机,电脑fiddler中会显示一些http信息,成功; ## 三. 其他 1.停止电脑对手机的网络监控 系统设置-wifi,找到代理,去掉即可; 2.删除手机中证书 安卓系统设置—安全—受信任的凭证—用户,点击证书删除即可; 3.删除手机上密码 手机系统—安全—密码,删除系统密码即可; ## 四. 自定义脚本保存json文件 点击fiddler的FiddlerScript进入脚本编辑,然后在 OnBeforeResponse添加自定义代码  ```csharp if (oSession.uriContains("https://app2.mobike.com/api/nearby/v4/nearbyBikeInfo"))//这个url需要改为你需要保存的url,url不一定要全,但是最好是唯一的,比如我的真实url是https://app2.mobike.com/api/nearby/v4/nearbyBikeInfo?__skck=0b1764422bb59c7fda46878a2f6dba13&__skts=1596517503&__skua=d41d8cd98f00b204e9800998ecf8427e&__skno=fbc91d4b-7574-499b-b978-6e456e1cd8d2&__skvs=1.1&__skcy=J5R%2B6yx8AHOvAYD2j%2BtCkN1anxk%3D,但是我只是公共前缀即可 {var strBody=oSession.GetResponseBodyAsString(); var sps = oSession.PathAndQuery.slice(-58,);//完整url获取58以后的的字符串 var curDate = new Date(); // FiddlerObject.alert(sps) // FiddlerObject.alert(curDate) var filename = "C:/Users/GaryT/Desktop/data/" + sps +".json"; //路径改为你自己的路径 var sw : System.IO.StreamWriter; if (System.IO.File.Exists(filename)) { sw = System.IO.File.AppendText(filename); sw.Write(strBody); } else{ sw = System.IO.File.CreateText(filename); sw.Write(strBody); } sw.Close(); sw.Dispose(); } ``` # 2. tasker实现app的定时运行 如果有需求也可以下载按键精灵等执行点击、滑屏等其他操作,我的需要只要定时打开和关闭app即可。 tasker下载链接 :https://www.lanzous.com/iafh29i(不保证永久有效) 软件已经完美破解并汉化,资源来自网络搜集与本人无关 教程 主要是两步 ## 2.1 添加任务 点击任务,然后点击左下角的+号添加任务  输入任务名,按√保存 然后会进入任务编辑页面,点击+号编辑任务  根据需要找到你想要的操作,我这里是打开应用,所以点击程序  然后选择启动应用,后面同理创建一个结束应用的任务  点击启动应用后跳转到应用选择页面,选择你需要启动的应用,比如我选择摩拜单车,接着会跳转到操作修改界面  点击两次左上角的返回即可  最后保存任务  关闭应用记得打开root  ## 2.2 添加配置文件 在配置文件的地方点击右下方的+,然后选择时间,  设置你需要运行的时间段,以及多久运行一次,时间间隔可以是小时或者分钟。设置好以后然后返回  选择一个对应的任务即可 最后点击右上的保存即可  很赞哦! ( 666) 打赏本站 关闭 感谢您的支持,我会继续努力的! 扫码打赏,你说多少就多少 相关文章 设计中 文章评论 文章写的很棒,继续加油! 关注我们 么么哒! 小程序名Gary自学 QQ号1349380978 特别推荐 我的blog发展历程 阅读 留言告诉我你的声音 阅读 个人博客,属于我的小世界! 阅读