# 学习目标:自行实现自动化玩腾讯微证券领长牛
原作者链接:在这里
1.环境搭建
手机:华为荣耀V20
spyder4
1.1安装Uiautomator2
打开Anaconda prompt,在base环境中安装Uiautomator2,安装命令为:
pip install uiautomator2
出现Successfully installed cached-property-1.5.2 uiautomator2-2.12.2则说明安装成功。
在将手机接入PC端前打开开发者模式,我的手机需在设置–>关于手机页面中,连续点击版本号七次,方可看到提示手机已处于开发者模式。
接着打开USB权限,开启USB调试,如图所示:
然后将手机接至PC端后,从Anaconda中打开spyder,在Ipython中输入以下命令安装:
import uiautomator2 as u2
device = u2.connect()
ATX安装成功后,可检测到设备存在:
1.2安装weditor
安装weditor,也是在base环境下安装,命令如下:
pip install -U weditor
安装成功后可在Anacondabase环境中查看。
2.使用weditor
安装成功后,在Anaconda prompt中输入以下命令
python -m weditor
会在谷歌浏览器自动打开页面,在页面上方选择实时连接,如图所示:
然后通过点击图中的牛查看坐标范围,记录下X,Y坐标的范围,后边编写代码需要,如图所示:
3.自动化的实现
需要先关注腾讯自选股微信版|微证券公众号。
3.1代码实现
进入到ATX之中,查看相应的IP地址,如图所示,并且记录。
代码实现如下:
import uiautomator2 as u2
import time
import random
def automatic_click(device, times):
for i in range(20):
x = random.randint(388, 677) # X坐标范围
y = random.randint(1000, 1200) # Y坐标范围
device.long_click(x, y, 0.01)
time.sleep(0.01)
time.sleep(0.01)
device.click(1002, 1081)
device.click(1002, 1081)
print("第%d次自动化操作结束" % times)
device = u2.connect_wifi("192.168.1.2") # 跟上图中的IP地址是对应的
print("打开微信")
device.app_start("com.tencent.mm")
time.sleep(2) ## 休眠2s等待微信
device(resourceId="com.tencent.mm:id/he6").click() # 点击搜索
device.send_keys("腾讯自选股微信版")
device(text="腾讯自选股微信版|微证券").click()
device(resourceId="com.tencent.mm:id/av9", text="🔥好福利").click()
device.xpath('//*[@text="🐮领长牛!"]').click()
time.sleep(3)
for i in range(100):
automatic_click(device, i+1)
device.service("uiautomator").stop() # 此语句根据情况进行添加或者删除
print("任务结束")
注意:在实现的过程中一定要将手机退回到桌面,再开始运行代码。