原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢! 原文链接地址:「docker实战篇」python的docker-抖音分析接口数据分析(21)
上节xposed已经安装完毕,设置对应的android的版本和代理服务器。
准备工作
1.xposed和JustTruestMe的安装 2.抖音安装完毕
- 启动fildder
- 点击进入指定的粉丝界面
- 查看数据
- 获取到的请求连接
https://api.amemv.com/aweme/v1/user/follower/list/?user_id=108719454702&max_time=1549012794&count=20&retry_type=no_retry&iid=62172089966&device_id=66011631779&ac=wifi&channel=aweGW&aid=1128&app_name=aweme&version_code=251&version_name=2.5.1&device_platform=android&ssmix=a&device_type=MI+6+&device_brand=Xiaomi&language=zh&os_api=19&os_version=4.4.2&uuid=863254011212197&openudid=1d4bed921e800405&manifest_version_code=251&resolution=1080*1920&dpi=320&update_version_code=2512&_rticket=1549012860987&ts=1549012860&as=a165c0050cb76ccf644355&cp=017bcd54cc4b54f4e1gkoo&mas=01cb98bea6c9a2c3a8d5faf856a795b13dacaccc2c2c6c66c6c66c
GET https://api.amemv.com/aweme/v1/user/follower/list/?user_id=108719454702&max_time=1549012794&count=20&retry_type=no_retry&iid=62172089966&device_id=66011631779&ac=wifi&channel=aweGW&aid=1128&app_name=aweme&version_code=251&version_name=2.5.1&device_platform=android&ssmix=a&device_type=MI+6+&device_brand=Xiaomi&language=zh&os_api=19&os_version=4.4.2&uuid=863254011212197&openudid=1d4bed921e800405&manifest_version_code=251&resolution=1080*1920&dpi=320&update_version_code=2512&_rticket=1549012860987&ts=1549012860&as=a165c0050cb76ccf644355&cp=017bcd54cc4b54f4e1gkoo&mas=01cb98bea6c9a2c3a8d5faf856a795b13dacaccc2c2c6c66c6c66c HTTP/1.1
Accept-Encoding: gzip
Cache-Control: max-stale=0
Host: api.amemv.com
Connection: Keep-Alive
Cookie: install_id=62172089966; ttreq=1$c26b0505a13059d50206f39916d5eaee910a25e9; qh[360]=1; odin_tt=e7eabe3bd71cee75718b6ab8dea9e67e78b97933017ff975f92ca1198179dfea0553012386575dce721502cc0d378c0c65a733783a7888440928643796139b6c
User-Agent: okhttp/3.10.0.1
在浏览器根本无法获取,尝试在浏览器内输入网址,查看数据。
- 之前说过一个工具叫mitmdump方式,可以添加python脚本
如果使用的pycharm的话,我建议使用命令
pip install mitmproxy
mitmdump -s 文件名称.py -p 端口号
可以打印出来后台的python后台输出的列表。
import json
try:
from douyin.handle_mongo import save_task
except:
from handle_mongo import save_task
def response(flow):
#通过fildder的方式获取到请求接口
if 'aweme/v1/user/follower/list' in flow.request.url:
#数据的分析获取节点中的followers
for user in json.loads(flow.response.text)['followers']:
douyin_info = {}
#分享的id
douyin_info['share_id'] = user['uid']
douyin_info['douyin_id'] = user['short_id']
douyin_info['nickname'] = user['nickname']
print(douyin_info)
save_task(douyin_info)
PS:找到项目的目录,执行mitmdump -s python文件 -p指定端口。然后就可以将对应的代理吐出来的数据获取到。 流程fildder就是获取url地址,mitmdump出去response吐出来的数据。然后进行处理在存储到mongodb中。技术目标就是不需要人的参与!慢慢的获取完数据后下一步使用appium来进行机器模拟人来点击滑动!