Python+Appium+夜神模拟器安装与简单运行(2/2)

前一篇文章Python+Appium+夜神模拟器安装与简单运行(1/2)介绍了环境配置与启动App,本篇就就介绍下如何控制bilibili搜索’日本核废水‘的相关视频。

使用Appium控制App涉及到一个无法绕开的问题,就是查找到要操作的元素。查找元素有两个方法:

这两种方法的具体操作步骤可查阅相关资料,这里就不再展开叙述。

下面我就直接给出最终的test_appium_nox.py程序:

from appium import webdriver
from appium.webdriver.extensions.android.nativekey import AndroidKey

from time import sleep

desired_caps = {
  'platformName': 'Android', # 被测手机是安卓
  'platformVersion': '7.1.2', # 手机安卓版本
  'deviceName': '127.0.0.1:62001', # 设备名,安卓手机可以随意填写
  'appPackage': 'tv.danmaku.bili', # 启动APP Package名称
  'appActivity': '.ui.splash.SplashActivity', # 启动Activity名称
  'unicodeKeyboard': True, # 使用自带输入法,输入中文时填True
  'resetKeyboard': True, # 执行完程序恢复原来输入法
  'noReset': True,       # 不要重置App, 保存之前的数据(例如账号密码什么的)
  'newCommandTimeout': 6000,
}

# 连接Appium Server,初始化自动化环境
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
print('App启动成功')

driver.implicitly_wait(15)

# 如果有'用户隐私协议', 点击'同意', 如果找不到的话会报异常, 所以需要放在try execpt中
try:
    # sleep(10)
    i_am_agree = driver.find_element_by_id('agree')
    if i_am_agree:
        i_am_agree.click()
except Exception as one:
    print('no agree')

# 如果有'青少年保护'界面,点击'我知道了', 如果找不到的话会报异常, 所以需要放在try execpt中
try:
    # sleep()
    iknow = driver.find_element_by_id("text3")
    if iknow:
        iknow.click()
except:
    print("no text3")

# 根据id定位搜索位置框,点击, 如果找不到的话会报异常, 所以需要放在try execpt中
try:
    expand_search = driver.find_element_by_id("tv.danmaku.bili:id/expand_search")
    if expand_search:
        expand_search.click()
except:
    print('no expand search')

# 根据id定位搜索输入框,点击, 如果找不到的话会报异常, 所以需要放在try execpt中
try:
    sbox = driver.find_element_by_id('tv.danmaku.bili:id/search_src_text')
    if sbox:
        sbox.send_keys('日本核废水')
        driver.press_keycode(AndroidKey.ENTER)  # 输入回车键,确定搜索
except:
    print('no search src text')

input('**** Press to quit..')
driver.quit()

最终模拟器中的运行效果如下:

在这里插入图片描述

  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值