抖音短视频数据抓取实战系列(十二)——抓取实战BUG总集
1、模拟器自带的Xposed框架无法安装。
博主提供了这边之前下载下来的几个框架,大家可以下载下来看下是否可以正常安装,链接:https://pan.baidu.com/s/1kJCDpE1YNMcgojEi4Oh2qw提取码:d3f4
2、Fiddler无法监测雷电模拟器上的数据。
博主上网查到的解释是fiddler无法监测高版本雷电模拟器的数据,解决方法也很简单换一个低版本的就行了,可以使用雷电官方推荐的稳定版本,或者使用3.0版本。
雷电模拟器历史版本下载地址:雷电模拟器更新日志
3、模拟器抖音用户详情页为空(未解决)。
博主这边在打开用户详情页的时候有时候会显示为空,但是把模拟器重开之后就可以展示了,这种情况是不是的发生也不知道什么原因。
4、pip版本更新。
使用代码“python -m pip install --upgrade pip”,进行更新。但可能每个人不一样,在用pip安装工具包的时候提示更新,会自带更新代码,用代码即可。
python -m pip install --upgrade pip
5、mitmdump报killed by block_global错误。
在运行Mitmproxy之后,mitmdump报的错误是 killed by block_global 是什么原因呢?
这是mitmdump的自我保护措施,它防止全球网络的连接,意思就是如果是本地局域网它不会阻拦,那该怎么办呢?
有两种解决办法:第一种,将模拟器的网络连接设置为桥接模式,这样就不会出现问题;
第二种办法是启动的时候加入参数 mitmdump -p 8889 --set block_global=false。
6、monitor.bat无法监测元素属性。
原因是monitor.bat无法截取android高版本的屏幕界面,博主这边在截取真机的时候就出现了问题,而博主的真机是android10,monitor无法进行截取。那应该怎么办呢,解决方法:
1、使用monitor.bat下面的uiautomatorviewer.bat进行屏幕截取。
2、打开uiautomatorviewer.bat之后界面界面如下
3、进行如下操作,Screenshot放屏幕截图,UI XML Dump放屏幕源文件。
4、cmd中通过以下代码进行屏幕文件。
#截取屏幕源文件
adb shell uiautomator dump /sdcard/screen.uix
adb pull /sdcard/screen.uix E:/screen.uix
#截取屏幕图片
adb shell screencap -p /sdcard/screen.png
adb pull /sdcard/screen.png E:/screen.png
5、需要事先新建文件。
6、进行屏幕截取,如下则成功。
7、在uiautomatorviewer.bat中放入屏幕文件,这样我们就可以获取app元素属性了。
7、python解析json字符串判断字段是否存在。
在解析用户接口数据的时候我们发现,不同用户可能对应的json字段都不一样,你有这个字段,我没有,如果直接赋值user_info[“shopLogo”]=result[“result”][“shopLogo”],可能因为不存在该字段而报出异常,所以我们在赋值之前需要先判断是否存在该字段,即判断json字符串中是否存在对应的key,博主这边使用的是’key not json’,参考代码:
result=json.loads(flow.response.text) #解析出json字符串
user_info= {}
if "age" in result: #判断是否存在age键
user_info["age"]=result["age"] #存在则赋值
else:
user_info["age"]="20" #不存在则设为默认值
这是博主在进行项目过程中遇到的一系列问题,对大家有一定参考意义,如果大家在项目进行过程中,发现了其他问题,可以前来和博主交流,欢迎大家前来补充。
项目目录
1、抖音短视频数据抓取实战系列(〇)——前言
2、抖音短视频数据抓取实战系列(一)——模拟器的选择与设置
3、抖音短视频数据抓取实战系列(二)——Fiddler安装配置以及模拟器监测环境配置
4、抖音短视频数据抓取实战系列(三)——Fiddler抓取抖音用户详细信息数据
5、抖音短视频数据抓取实战系列(四)——Java解析Json文件数据并存库
6、抖音短视频数据抓取实战系列(五)——Mitmproxy的安装以及模拟器Mitmproxy证书安装
7、抖音短视频数据抓取实战系列(六)——Mitmproxy+python编写监测程序
8、抖音短视频数据抓取实战系列(七)——python连接MySQL数据库
9、抖音短视频数据抓取实战系列(八)——Mitmproxy抓取用户详细信息并入库
10、抖音短视频数据抓取实战系列(九)——自动化Appium的环境与参数配置
11、抖音短视频数据抓取实战系列(十)——获取抖音dom元素属性
12、抖音短视频数据抓取实战系列(十一)——Appium与Mitmproxy联合-自动取存抖音用户信息
13、抖音短视频数据抓取实战系列(十二)——抓取实战BUG总集
——————结束——————