1. 确保手机已与电脑连接

2. 开启微信debug模式

  在微信聊天界面输入:debugx5.qq.com,勾选”打开TBS内核Inspector调试功能”

3. 查看微信里面webview版本

  在电脑chrome浏览器输入:chrome://inspect/#devices,再打开微信的公众号页面,刷新浏览器页面,就会出现webview版本号,点击“inspect”即可定位元素

4. 下载对应版本的chromedriver

  下载的对应版本的chromedriver替换该路径:\node_modules\appium\node_modules\appium-chromedriver\chromedriver\win下的chromedriver

5. 获取公众号的进程名字

  adb shell

  dumpsys activity top | grep ACTIVITY

  ps 进程的pid

6. 实现代码如下:

from appium import webdriver
import time

di = {}
di[\'platformName\'] = \'Android\'
di[\'platformVersion\'] = \'6.0\'
di[\'deviceName\'] = \'Appium\'
di[\'unicodeKeyboard\'] = True
di[\'resetKeyboard\'] = True
di[\'appPackage\'] = \'com.tencent.mm\'
di[\'appActivity\'] = \'.ui.LauncherUI\'
di[\'udid\'] = \'127.0.0.1:62001\'
# di[\'automationName\']=\'uiautomator2\'
#不同点
di[ \'chromeOptions\']="{\'androidProcess\': \'com.tencent.mm:tools\'}"
driver = webdriver.Remote(\'http://localhost:4723/wd/hub\',di)
time.sleep(5)
driver.implicitly_wait(20)
# 点微信首页搜索按钮
driver.find_element_by_accessibility_id("搜索").click()
# 输入内容搜索
time.sleep(3)
driver.find_element_by_id(\'com.tencent.mm:id/hx\').send_keys("yx")
# 点开公众号
time.sleep(3)
driver.find_element_by_id(\'com.tencent.mm:id/l7\').click()
# 点公众号菜单-精品分类
time.sleep(3)
driver.find_elements_by_id(\'com.tencent.mm:id/aaq\')[0].click()
#不同点,切换到webview
time.sleep(2)
print(driver.contexts)
driver.switch_to.context(\'WEBVIEW_com.tencent.mm:tools\')
time.sleep(3)
#切换句柄
handles=driver.window_handles
driver.switch_to_window(handles[1])
driver.find_element_by_xpath(".//*[@id=\'namespace_1\']/div[1]/div/div[2]").click()
版权声明:本文为badbadboyyx原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/badbadboyyx/p/12202910.html