一、前言
上一篇小说爬的是电脑端的静态网址,一直想爬手机端app数据的抓取,研究有好几天了,在网上也找了各种教程,差点挂在appium的环境安装。本编教程从appium的环境配置开始到抓取手机app微信朋友圈结束。
知乎:https://zhuanlan.zhihu.com/p/41311503
GitHub:https://github.com/FanShuixing/git_webspider
二、参考博文
以下网址对于这篇教程非常重要,感谢分享
悠悠博主appium+python环境搭建:https://www.cnblogs.com/yoyoketang/p/6128725.html
崔大的appium环境搭建还有崔大的python3实战:https://cuiqingcai.com/5407.html
java环境配置:https://jingyan.baidu.com/article/fd8044fa2c22f15031137a2a.html
appium获取appPackage和appActivity:https://blog.csdn.net/mtbaby/article/details/78676477
在看这篇教程前,希望你已经具备selenium动态抓取网页的知识,若不熟悉,可参看https://blog.csdn.net/Fan_shui/article/details/81516645
三、环境搭建
我最开始是按照崔大的环境搭建 https://cuiqingcai.com/5407.html,然后弄完之后发现在notepad里面写的python运行不了,不能打开手机端的app,appium倒是可以打开。另外一篇环境搭建的博文安装的appium是旧版,我推荐先按照崔大的教程把appium环境和Android studio搭建下载好,重点:我们在安装的时候,安装环境只要是可以改的都改,不要按照默认的下在c盘,c盘就那么大个儿,最重要的是要清楚自己的安装位置,后面会用到。(当然也可以直接按照悠悠博主的教程一步步的搭建下来,若是这样,环境搭建下面就都可以不用看了)
我们按照崔大的教程把appium环境+Android studio搭建好,其中第三步我再详细加一点,下图是崔大文中的第三步
我的安装位置在F:/SDK
在环境变量中,系统变量下增加一个这样
在系统变量的path中增加个下面两个
弄好后,我们打开另外一篇博文https://www.cnblogs.com/yoyoketang/p/6128725.html,一步步按照教程来,其中第三步、四步android_sdk下载就不用再下了,崔大的博文中已经下过。(ps:悠悠博主的后面几篇环境搭建也要看)
四、appium的使用
恭喜恭喜,走到这一步,我走到这儿可是花了好几天的时间。本文使用的真机,没用模拟器,感兴趣的可以搜下模拟器的使用。我们用usb连接上手机,要打开手机上的usb调试,然后输入adb devices -l(不是数字1,是小写l)
出现上图就证明手机和电脑连接成功,若是出现下图这种,就把手机拔掉再重连一下
成功后,打开appium

platformName:平台名称
deviceName:设备名称,就是刚才的adb devices -l中mode后面就是
appPackage:app包名
appActivity:app活动名
有个简单的方法便可以获得appPackage和appActivity:https://blog.csdn.net/mtbaby/article/details/78676477
start sessions后
我们可以点击左边的登陆(忍不住抱怨下微信,我不就是多登陆了两下,然后微信号被封了一天(*  ̄︿ ̄)),点击登陆后可以看到中间的App Source有高亮的代码,就是这个登陆按钮的,可以再看右边的Selected Element中有Tap、Send keys、Clear。
在最左边图中点击登陆后,若最右边下面的clickable是True,则证明可以点击,可以通过点击Tap实现点击功能,appium就介绍到这。
五、python对接Appium
首先我们要对接app,就是类似于start session这样的连接
注:代码运行时要保证手机不黑屏
from appium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
PLATFORM='Android'
deviceName='HUAWEI_P7_L09'
app_package='com.tencent.mm'
app_activity='.ui.LauncherUI'
driver_server='http://127.0.0.1:4723/wd/hub'
class Moments

本文介绍了如何使用Appium进行手机app数据抓取,特别是针对微信朋友圈的抓取。首先讲解了Appium的环境配置,包括参考的教程链接和环境搭建步骤。接着阐述了Appium的使用,包括连接手机、获取appPackage和appActivity,以及如何模拟点击操作。最后,展示了Python如何对接Appium,进行元素定位和数据提取,特别提到了滑动操作和数据处理的方法。在实践中,可能会遇到微信登录限制等问题,需要耐心调试。
:用Appium抓取手机app微信的数据&spm=1001.2101.3001.5002&articleId=81413595&d=1&t=3&u=d88020a8aa9b4db7af706caf21028e39)
5742

被折叠的 条评论
为什么被折叠?



