1.python 自动登陆

用miniQMT自动化交易的时候,如果没有登录miniQMT那后面写的策略都白搭,无法运行。所以今天分享一个花姐写的自动登录miniQMT的脚本。开始讲怎么使用之前我们先看看效果

2.python 自动登录网站

这个脚本要怎么使用呢?首先我们需要手动登录QMT然汇通物流信息网后用微信或者其它截图软件截取3个图片,并分别保存为“pwd.png、check.png、buy.png”,在截取图片②的时候一定要用未勾选状态下的截图,不然到时候脚本就直接登录大QMT了。

3.python写一个自动登录脚本

如下图所示

4.python自动化登录

把3个图片放到项目根目录以后,然后在把脚本放到你的Python项目里,接下来在脚本最上面填写配置信息,把QMT_PATH和Password替换成你自己的QMT目录和帐号密码。

5.python 自动输入密码登陆程序

最后通过import就可以使用了,比如import start_miniQMT start_miniQMT.st汇通物流信息网art_miniQMT() start_miniQMT会返回一个bool值,如果返回True说明miniQMT启动成功了,返回False说明启动失败了需要我们手动操作下(花姐测试了几次返回False的概率基本上为0),为了以防万一大家也可以增加个飞书消息提醒或者邮件提醒之类的功能。

6.python爬虫自动登录

接下来分析下脚本代码:需要用到的库有:psutil、pyautogui、pillow、opencv-python其中pillow、opencv-python是pyautogui依赖库可以通过以下脚本安装:。

7.python自动登录网站爬取数据

pip install psut汇通物流信息网il pyautogui pillow opencv-python 首先我定义了一个is_process_running的方法来判断当前是不是大QMT在运行,如果是就返回True

8.python自动登录路由器

defis_process_running(name):for proc in psutil.process_iter([name]): try: if proc.info[

9.python自动登录软件

name] and proc.info[name].lower() == name.lower(): returnTrueex汇通物流信息网cept (psutil.NoSuchProcess, psutil.AccessDenied):

10.python自动登录网页平台

continuereturnFalse如果大QMT在运行就直接用proc.kill()的方法把它关闭def close_running_process(name): for proc in psutil.process_iter([

name]): if proc.info[name] and proc.info[name].lower() == name.lower(): proc.kill()

然后通过subproc汇通物流信息网ess.Popen(QMT_PATH, shell=True)的方法打开QMT的登录界面接下来调用pyautogui来模拟登录deflogin_miniQMT():# 这里可以添加登录miniQMT的代码。

print(“打开miniQMT”) subprocess.Popen(QMT_PATH, shell=True) # 等待密码输入框出现(最多等60秒)ifnot wait_for_image(

“pwd.png”): print(“启动 QMT 超时,未检测到密码输入框,请检查软件是否正常启动”) returnFalse 汇通物流信息网 print(“QMT登录界面已打开”

) find_and_click(“pwd.png”) # 点击密码输入框 time.sleep(1) # 等待1s# 输入密码 pyautogui.write(Password, interval=

0.31) time.sleep(1) # 等待1s find_and_click(“check.png”,confidence=0.9) # 点击独立交易 pyautogui.press(

enter) # 模拟按下回车键ifnot wait_for_i汇通物流信息网mage(“buy.png”): print(“等待登录超时,未检测到买入按钮,请检查软件是否正常启动”)

# return False print(“QMT已经登录”) if test_miniQMT_is_connected(): returnTrueelse: print(

“miniQMT登录失败,请手动登录”) returnFalse最后通过test_miniQMT_is_connected再次判断下miniQMT是否可用,可用就返回True不可用就告诉用户自己手动登录下

deftest_min汇通物流信息网iQMT_is_connected():try: xtdata.connect() print(“miniQMT连接成功”) return

Trueexcept Exception as e: print(f”miniQMT连接失败: {e}”) returnFalse这样,一个 免手动输入密码、免点击、秒开 miniQMT

的自动化方案就搞定了。以后写策略就不用先去点来点去了,直接 import 一行代码,QMT 乖乖帮你登录好。

发表回复

后才能评论