appium--解决中文输入不了的问题
配置
from appium import webdriver desired_caps={} desired_caps['platformName']='Android' #模拟器 desired_caps['deviceName']='127.0.0.1:62001' desired_caps['platforVersion']='5.1.1' desired_caps['app']=r'F:\App\3.1.0.apk' desired_caps['appPackage']='com.tal' desired_caps['appActivity']='com.activity.SplashActivity'
#不写为False(不保留用户的session,每次都有更新和跳过的提示) #相当于每次都是重新安装 desired_caps['noReset']='True'
send_keys() # 传入中文时需要在capability中配置如下内容 desired_caps['unicodeKeyboard']='True' desired_caps['resetKeyboard']='True'
如果不加这两行,有中文的时候就输入不了
有时候加了这两行,输入中文时会出现乱码,是因为输入法的原因
使用appium做了输入操作之后,如果出现输入法无法唤起,可以在系统设置---语言和输入法---将当前的输入法替换为系统输入法或者其他输入法
Appium1.6.3开始支持识别Toast内容,主要是基于uiAutomator2,因此需要在Capability配置如下参数,要先安装,安装步骤查看appium2里的toast的内容
desired_caps['automationName']='uiautomator2'
driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)
启动appium服务
可以在cmd下输入appium来启动,就不用启动appium-desktop了
实战
from appium import webdriver desired_caps={} desired_caps['platformName']='Android' #模拟器 desired_caps['deviceName']='127.0.0.1:62001' desired_caps['platforVersion']='5.1.1' #真机 # desired_caps['deviceName']='ry' # desired_caps['platforVersion']='7.0' # desired_caps['udid']='KVXBB18224502326' desired_caps['app']=r'F:\App\1.0.apk' desired_caps['appPackage']='xxx' desired_caps['appActivity']='xxx' driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)
/wd/hub规定这样写,因为源码中就这样写的,可以看Remote的源码,4723为appium-desktop的端口
报错解决
urllib.error.URLError: <urlopen error [WinError 10061] 由于目标计算机积极拒绝,无法连接。>
解决方案:服务未开启,开启appium
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)