-
pip install --pre -U weditor
-
找一台旧手机,打开开发者模式,并连接家里wifi,(不需要插入SIM卡),安装支付宝并登录账号至少一次。
-
保持手机USB 连接电脑,执行下面的命令,自动安装UIautomator2所需要的设备端程序:uiautomator-server 、atx-agent、openstf/minicap、openstf/minitouch
-
python -m uiautomator2 init
-
在dos命令下,为Python安装第三方库Tushare,以便轻松查询上证指数涨跌。**Tushare是一个免费、开源的python财经数据接口包,功能十分强大。**这里我们只用一点点指数查询功能。
-
pip install tushare
-
在dos命令下,启动Weditor,定位支付宝猜涨跌各个UI的元素:
-
python3 -m weditor
以上8个步骤都做了,理论上,我们就可以开始写程序了。如果对于获取控件元素,不了解,请本文的底部参考链接。
开始写Python 程序:
#导入必备的Python库
import uiautomator2 as u2
import time
import tushare as ts
import schedule
from datetime import datetime
连接设备,下面连接用的序列号可由adb devices,手动查出来
d = u2.connect_usb(“FUH0216830003040”) # 华为 P9
唤醒设备d.screen_on() # turn on the screen
time.sleep(2)
unlock screen,不能设置复杂图形或者密码哦
d.unlock( u")
time.sleep(2)# return to home
d.press(“home”)
等待
time.sleep(2)
启动支付宝应用,并进入猜涨跌界面,支付宝package name, 百度可查
d.app_start(“com.eg.android.AlipayGphone”)
wait until the ui object appears,以下元素名,均由Weditor获得
if d(text=u"好的").wait(timeout=3.0): # return bool:
d(resourceId=“com.alipay.mobile.antui:id/ensure”).click()
if d(text=u"点击下方头像登录").wait(timeout=3.0): # return bool
d(resourceId=“com.ali.user.mobile.security.ui:id/userAccountImage”).click()
if d(text=u"刷脸登录").wait(timeout=3.0): # return bool
d(resourceId=“com.ali.user.mobile.security.ui:id/switchLoginMethodCenter”).click()
if d(text=u"密码登录").wait(timeout=3.0): # return bool
d(resourceId=“com.alipay.mobile.antui:id/item_name”, text=u"密码登录").click()
d(resourceId=“com.ali.user.mobile.security.ui:id/content”, className=“android.widget.EditText”,instance=1).set_text(“写支付宝密码”)
time.sleep(2)
d(resourceId=“com.ali.user.mobile.security.ui:id/loginButton”).click()
if d(text=u"更多").wait(timeout=3.0):
d(text=u"更多").click()
if d(text=u"股票").wait(timeout=3.0):
d(text=u"股票").click()
if d(text=u"涨跌").wait(timeout=3.0):
d(text=u"涨跌").click()
利用Tushare库,从dataframe数据中,拿上证指数000001的涨跌情况
df = ts.get_index()
for i in range(26):
if df.loc[i][‘‘000001’’] == index_code:
up_or_down = df.loc[i][‘change’]
根据上午涨跌幅,选择涨跌方向,并选择用多少积分下注(20, 50, 100, 200)
if up_or_down >= 0: # 根据支付宝规则,大盘不涨不跌,视为上涨
点击涨按钮
d.click(0.281, 0.784)
等待下个UI出现
time.sleep(3)
下面根据涨的幅度情况下赌注
if up_or_down > 0.4: # 如果当日涨幅超过4%,赌200积分;
my_print(“当日涨幅超过0.4%,赌200积分”)
d.click(0.741, 0.416)
elif 0.3 < up_or_down <= 0.4: # 如果当日涨幅在0.4 和0.5之间,赌100积分;
my_print(“当日涨幅在0.3 和0.4之间,赌100积分”)
d.click(0.58, 0.416)
elif 0.2 < up_or_down <= 0.3: # 如果当日涨幅在0.3 和0.4之间,赌50积分;
my_print(“当日涨幅在0.3 和0.2之间,赌50积分”)
d.click(0.415, 0.416)
elif up_or_down <= 0.2: # 如果当日涨幅在0.3以下, 赌20积分
my_print(“当日涨幅在0.2以下, 赌20积分”)
d.click(0.25, 0.416)
else: # up_or_down <= 0, 估计这个位置是跌
点击跌按钮
d.click(0.727, 0.784)
等待
time.sleep(3)
下面根据跌的幅度情况下赌注
if up_or_down < -0.4: # 如果当日跌幅超过5%,赌200积分;
点击200积分赌注
my_print(“当日跌幅超过0.4%,赌200积分”)
d.click(0.741, 0.416)
elif -0.4 <= up_or_down < -0.3: # 如果当日跌幅在0.4 和0.5之间,赌100积分;
my_print(“当日跌幅在0.4 和0.3之间,赌100积分”)
d.click(0.58, 0.416)
elif -0.3= < up_or_down < -0.2: # 如果当日跌幅在0.3 和0.4之间,赌50积分;
my_print(“当日跌幅在0.3 和0.2之间,赌50积分”)
d.click(0.415, 0.416)
elif up_or_down <= -0.2: # 如果当日跌幅在0.3以下, 赌20积分
my_print(“当日跌幅在0.2以下, 赌20积分”)
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Python开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024c (备注Python)
感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-qmxn6PXD-1712466008070)]