python+appium怎么识别app中的web页面定位并使用

起先,我只是想撸个羊毛,但是。。。

言归正传

首先:手机+电脑使用chrome,chrome://inspect/#devices这个方法被我pass了,操作不难,但是没有vpn,页面打开展示404,如果后面有不用vpn可以的方法,我会持续更新;

然后:试图使用切换至webview后再定位元素,但我打印出来的

print(driver.contexts)

都展示:

['NATIVE_APP']

生无可恋,内心崩溃

以下附上我想象中的代码:

def Print_list_data(driver):
   source = driver.page_source
   cs = BeautifulSoup(source, "lxml")
   _span = []
   cs = cs.find_all('td')
   for i in cs:
      text = i.string
      if text not in _span:
         # print('当前页面列表页数据:' + str(text))
         _span.append(text)
   return _span

# 获取所有的环境
contexts = driver.contexts
print contexts

# 切换到webview
driver.switch_to.context(contexts[1])
# 获取当前的环境,看是否切换成功
now = driver.current_context
print now

# 切回native
driver.switch_to.context(contexts[0])

# driver.switch_to.context("NATIVE_APP") # 这样也是可以的

# 获取当前的环境,看是否切换成功
now = driver.current_context
print now

然后:我又试了下从class里面取文字,然后我觉得这个代码看起来就是给app里面能取到的className=android.widget.TextView用的,哈哈哈哈哈哈失败;

river.tap([(905, 1233)])#去关注
time.sleep(3)
print(driver.contexts)
el = driver.find_elements_by_android_uiautomator('new UiSelector().className("android.widget.TextView")')
print(el)
for i in el:
    text = i.text
    print(text)
    if text == u'进店并关注':
        i.click()
        time.sleep(10)
        print('哈哈哈哈哈哈哈哈哈')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

linmumum

吃饱睡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值