「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

栏目: Python · 发布时间: 5年前

内容简介:上次已经把python文件挂载到虚拟机上了,这次主要设置下虚拟机通过docker容器的方式。

上次已经把 python 文件挂载到虚拟机上了,这次主要设置下虚拟机通过 docker 容器的方式。

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

运行

  • python 代码运行

    >启动一个crt的会话

docker run -it -v /root/docker:/root --name python zhugeaming/python3-appium

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

  • mitmdump的运行

启动一个crt的会话,可以通过重名名session的方式好区别

docker run --rm -it -v /root/docker:/root/ -p 8889:8889 --name mitmdump zhugeaming/python3-appium mitmdump -p 8889 -s /root/decode_data.py

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

  • appium的运行

    >启动一个crt的会话,可以通过重名名session的方式好区别,这里需要注意需要启动三个因为咱们监控3个app得代码。之前我演示的是不是启动了多个appium的客户端服务,这里是通过容器的方式就要启动3个容器。

docker run --privileged -d -p 4723:4723 --name appium_douyin appium/appium
docker run --privileged -d -p 4725:4723 --name appium_kuaishou appium/appium
docker run --privileged -d -p 4727:4723 --name appium_jrtt appium/appium

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

  • 夜神模拟器的设置

    1.设置网络桥接模式

    「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

2.需要安装容器内部的mitmdump的证书

证书的安装之前的介绍mitmproxy的时候介绍过。

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

3.设置好一个后,可以通过复制模拟器的功能

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

4.设置好本地的adb devices,转成tcp的形式

adb connect 127.0.0.1:62001
adb connect 127.0.0.1:62025
adb connect 127.0.0.1:62026
adb devices
adb -s 127.0.0.1:62001 tcpip 5555
adb -s 127.0.0.1:62025 tcpip 5555
adb -s 127.0.0.1:62026 tcpip 5555

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

  • 容器的appium设置连接

    > 192.168.199.122是夜神模拟器的ip-抖音

    > 192.168.199.117是夜神模拟器的ip-快手

    > 192.168.199.173是夜神模拟器的ip-今日头条

docker exec -it appium_douyin adb connect 192.168.199.122:5555
docker exec -it appium_kuaishou adb connect 192.168.199.117:5555
docker exec -it appium_jrtt adb connect 192.168.199.173:5555

#如果ip写错了怎么办,挂载错了怎么办
#docker exec -it 容器名称 adb kill-server
````


![](https://upload-images.jianshu.io/upload_images/11223715-fb9572508a1eeafb.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


* handle_appium_docker.py的python代码的修改
>直接本地修改,挂载代码也会随着被改。

![](https://upload-images.jianshu.io/upload_images/11223715-233b196366015f20.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

> docker的宿主机的ip也要在python代码里面修改,修改成连接的 linux 主机的ip

![](https://upload-images.jianshu.io/upload_images/11223715-985aa964f84cb4f7.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

>这里面的页面xpath 也需要手动的修改,根据实际的我这里直接写//android,通过uiautomatorviewer.jar

![](https://upload-images.jianshu.io/upload_images/11223715-b134b601f5607bdd.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)




*  handle_mongo.py的python代码的修改

![](https://upload-images.jianshu.io/upload_images/11223715-ff494634f717b607.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


#### 这些设置好基本就可以进行抓取咱们的数据了
>在python 哪里直接执行代码 就可以了。
``` python
python handle_appium_docker.py

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

mongodb的数据

「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)

PS:电脑配置比较高i7的cpu,16g的内存,固态的硬盘,尽量还是用真机,如果是真机8g跑的也很666,企业里面还是用真实的手机来跑的。这里综合实战了,从appium的使用,移动端的使用,mitmdump的使用,都综合到了一起。遇到问题其实百度和谷歌都有类似的问题,文章很多部分都是参考:https://github.com/appium/appium-docker-android ,哈哈国内最大的男性交友网站很给力的。

百度未收录

>>原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!

>>原文链接地址:上一篇:

已是最新文章


以上所述就是小编给大家介绍的《「docker实战篇」python的docker-打造多任务端app应用数据抓取系统(下)(35)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

格蠹汇编

格蠹汇编

张银奎 / 电子工业出版社 / 2013-3-1 / 66.00元

《格蠹汇编——软件调试案例集锦》以案例形式讨论了使用调试技术解决复杂软件问题的工具和方法。全书共36章,分为四篇。前两篇每章讲述一个有代表性的真实案例,包括从堆里抢救丢失的博客,修复因误杀而瘫痪的系统,徒手战木马,拯救“发疯”的windows7,经典阅读器的经典死锁,拯救挂死的powerpoint,转储分析之双误谜团,是谁动了我的句柄,寻找系统中的“耗电大王”,解救即将被断网的系统,转储分析之系统......一起来看看 《格蠹汇编》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

html转js在线工具
html转js在线工具

html转js在线工具