您好,登錄后才能下訂單哦!
上次已經把python文件掛載到虛擬機上了,這次主要設置下虛擬機通過docker容器的方式。
python 代碼運行
>啟動一個crt的會話
?docker?run?-it?-v?/root/docker:/root?--name?python?zhugeaming/python3-appium
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
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
夜神模擬器的設置
1.設置網絡橋接模式
2.需要安裝容器內部的mitmdump的證書
證書的安裝之前的介紹mitmproxy的時候介紹過。
3.設置好一個后,可以通過復制模擬器的功能
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
容器的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
mongodb的數據
PS:電腦配置比較高i7的cpu,16g的內存,固態的硬盤,盡量還是用真機,如果是真機8g跑的也很666,企業里面還是用真實的手機來跑的。這里綜合實戰了,從appium的使用,移動端的使用,mitmdump的使用,都綜合到了一起。遇到問題其實百度和谷歌都有類似的問題,文章很多部分都是參考:https://github.com/appium/appium-docker-android ,哈哈國內最大的男×××友網站很給力的。
>>原創文章,歡迎轉載。轉載請注明:轉載自IT人故事會,謝謝!
>>原文鏈接地址:「docker實戰篇」python的docker-打造多任務端app應用數據抓取系統(下)(35)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。