工具
android:5.0以上
uc-devtools
adb
Chromedriver
1.打开开发者模式(不懂的就百度),打开usb调试和安装
2.在windows中打开命令行,输入adb devices,可以看到手机驱动就行了
1.下载好直接安装就行了,如果安装过程中缺少什么东东文件的话,就在C盘全局搜索出来复制到安装uc-devtools的文件夹就行了
2.安装完成后,需要在设置中选择本地资源
3。打开我们自带的浏览器,输入百度的网址,就能够看的到我们的页面了,点击inspect查看H5页面就行了(如果看不到的话,可能是浏览器内核问题)
1。我们可以看到浏览器的版本,然后我们需要下载对应的Chromedriver的版本,下载好后解压放到自己喜欢的文件夹下面即可
启动后,能够看到配置的chromedriver的配置即可
小程序X5内核浏览器
1.使用微信浏览器进入debugx5.qq.com,勾选调试功能,如果进入页面不是这个X5调试的话,先跳过
2.如果进入的不是x5内核,先进入debugmm.qq.com/?forcex5=true
1.我们先使用微信进入一个小程序,比如我这边进入BOSS直聘(进入之前尽量把所有的程序都杀死,方便我们找到小程序)
adb shell dumpsys activity top | findstr ACTIVITY#获取正在运行的程序 adb shell ps pid# pid 从获取运行中的程序找到id
desired_caps = { "platformName": "Android", # 键盘设置 'unicodeKeyboard': True, # 屏蔽软键盘 # 'resetKeyboard': True, "platformVersion": "10", "deviceName": "bb03a20", "noReset": True, "appPackage": "com.tencent.mm", "appActivity": "com.tencent.mm.ui.LauncherUI", "recreateChromeDriverSession": True, # adb shell dumpsys activity top | findstr ACTIVITY 取出小程序进程id # adb shell ps pid 通过id获取进程名字 "chromeOptions": {"androidProcess": "com.tencent.mm:appbrand0"}, # 小程序的进程名称 "browserName": "",# 科教书说必须要有我实践没有也行,官网解释:要自动化的移动网络浏览器的名称。如果要自动执行应用,则应为空字符串。大意:如果执行手机浏览器的话,就放上浏览器名字,如果是内嵌H5的话,就空字符串; "automationName": "UiAutomator2" } driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps) # 进入小程序步骤省略。。。 # 获取上下文 cons = driver.contexts print(cons)#打印上下文 # 切换上下文到最后一个,PS:打开小程序后可能会出现很多个上下文,随便进一个都可以 driver.switch_to.context(cons[-1]) # 获取窗口句柄 hans = driver.window_handles # 默认的句柄不是我们的小程序,我们需要切换窗口句柄 driver.switch_to.window(hans[-1]) # 切换成功后,就打印一下页面看看是不是我们的小程序,不是的话要么上下文切错了就是句柄切错了 print(driver.page_source)
作者:qq_42956206
原文链接:https://blog.csdn.net/qq_42956206/article/details/109328279#comments_14691026