当前位置: 首页 > news >正文

如何用python自动化微信小程序

如何微信小程序自动化抢到跨境安

最近,接到一个这样的需求,最终交付的结果如下:

为了保护隐私,做了马赛克的处理。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HxevUMst-1663543812561)(kjaaa.gif)]

一、界面的实现

程序提供一个界面,用于启动模拟器和实现启动抢票脚本

在这里插入图片描述

二、模拟器集成

模拟器被封装程序的安装目录下

在这里插入图片描述

三、自动化小程序

整个自动化的工程采用python实现:

核心的伪代码如下图所示:

import uiautomator2 as u2
import time
import adbutils
import  multiprocessing

class HandleKaoyanbang(object):
    def __init__(self, serial="127.0.0.1:62025"):
        # 当前是通过usb的方法来街道移动设备的
        self.d = u2.connect_usb(serial=serial)
        self.size = self.get_windowsize()

    def get_windowsize(self):
        """获取手机屏幕的大小"""
        return self.d.window_size()

    def close_app(self):
        # 停止考研帮app
        self.d.app_stop("com.tencent.mm")

    def enter_kja(self):


    def ClickTryCatch(self, x, y, sleeptime):

    def SetTextTryCatch(self, text, sleeptime):


    def xiaochengxuGet(self):

    def handle_kaoyanbang_app(self):


# 获取所有设备的序列号
def get_devices():
    # 获取到当前操作系统中所接通的移动设备的序列号
    return [d.serial for d in adbutils.adb.device_list()]

# 操控设备函数
def handle_device(serial):
    k = HandleKaoyanbang(serial)
    k.handle_kaoyanbang_app()

def main():
    # 多进程启动u2滑动移动设备
    for i in range(len(get_devices())):
        serial = get_devices()[int(i)]
        handle_device(serial)
        #p = multiprocessing.Process(target=handle_device, args=(serial,))
        #启动进程
        #p.start()



if __name__ == '__main__':
    main()

四、最终部署

将整个程序打包,打包后的安装包发送给客户:

在这里插入图片描述

安装完成后,直接运行,就可以实现文章开头的动图效果了

如果想学习系统学习微信自动化脚本抓取的可以参考我的这个专栏

https://blog.csdn.net/biggbang/category_11933462.html?spm=1001.2014.3001.5482

如果也有类似的需求可以看到我的博客主页,找到qq或者v定制开发

五、总结

  • 本文介绍了整个微信小程序的自动化过程 。
  • 我已经将全部源码上传到后台上,关注文章底部公众号后回复「 kja 」即可获得。
  • 如果你觉得文章还不错,请大家点赞分享下。你的肯定是我最大的鼓励和支持。

💬 往期优质文章分享

  • C++ QT结合FFmpeg实战开发视频播放器-01环境的安装和项目部署
  • 解决QT问题:运行qmake:Project ERROR: Cannot run compiler ‘cl‘. Output:
  • 解决安装QT后MSVC2015 64bit配置无编译器和调试器问题
  • Qt中的套件提示no complier set in kit和no debugger,出现黄色感叹号问题解决(MSVC2017)
  • Python+selenium 自动化 - 实现自动导入、上传外部文件(不弹出windows窗口)

🚀 优质教程分享 🚀

  • 🎄如果感觉文章看完了不过瘾,可以来我的其他 专栏 看一下哦~
  • 🎄比如以下几个专栏:Python实战微信订餐小程序、Python量化交易实战、C++ QT实战类项目 和 算法学习专栏
  • 🎄可以学习更多的关于C++/Python的相关内容哦!直接点击下面颜色字体就可以跳转啦!
学习路线指引(点击解锁)知识定位人群定位
🧡 Python实战微信订餐小程序 🧡进阶级本课程是python flask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。
💛Python量化交易实战 💛入门级手把手带你打造一个易扩展、更安全、效率更高的量化交易系统
❤️ C++ QT结合FFmpeg实战开发视频播放器❤️难度偏高分享学习QT成品的视频播放器源码,需要有扎实的C++知识!
💚 游戏爱好者九万人社区💚互助/吹水九万人游戏爱好者社区,聊天互助,白嫖奖品
💙 Python零基础到入门 💙Python初学者针对没有经过系统学习的小伙伴,核心目的就是让我们能够快速学习Python的知识以达到入门

🚀 资料白嫖,温馨提示 🚀

关注下面卡片即刻获取更多编程知识,包括各种语言学习资料,上千套PPT模板和各种游戏源码素材等等资料。更多内容可自行查看哦!

请添加图片描述

相关文章:

  • javaH5醉美南湾湖网站设计计算机毕业设计MyBatis+系统+LW文档+源码+调试部署
  • Windows11+VS2019驱动开发环境搭建
  • 文件防泄密系统如何保障企业文档的安全性?
  • 【数据结构与算法】ArrayList与顺序表(上)
  • 【前端进阶】-TypeScript类型声明文件详解及使用说明
  • [Spring boot] Spring boot 实现发送邮件功能
  • 万字指针超详细总结
  • 列表页常见 hook 封装
  • 集合_HashSet(HashMap)扩容机制源码简析
  • Spring注解@Qualifier的详细用法你知道几种「扩展点实战系列」- 第444篇
  • uni-app 微信小程序中关于 map 地图使用案例分享
  • 工业级成熟航运港口人工智能产品全球前三船公司及港口码头落地,中国上海人工智能独角兽中集飞瞳全球应用最广规模最大最先进港航AI企业
  • CSS基础篇---02选择器进阶、背景样式、显示模式
  • 【C语言】自定义类型 —— 结构体
  • 千万级用户ms级抽奖N名设计方案
  • [译]前端离线指南(上)
  • 【Linux系统编程】快速查找errno错误码信息
  • Docker入门(二) - Dockerfile
  • JavaWeb(学习笔记二)
  • Mocha测试初探
  • python学习笔记 - ThreadLocal
  • TypeScript实现数据结构(一)栈,队列,链表
  • vue从创建到完整的饿了么(18)购物车详细信息的展示与删除
  • 跨域
  • 容器化应用: 在阿里云搭建多节点 Openshift 集群
  • 如何优雅的使用vue+Dcloud(Hbuild)开发混合app
  • 在weex里面使用chart图表
  • ​ArcGIS Pro 如何批量删除字段
  • ​一些不规范的GTID使用场景
  • (3)Dubbo启动时qos-server can not bind localhost22222错误解决
  • (33)STM32——485实验笔记
  • (iPhone/iPad开发)在UIWebView中自定义菜单栏
  • (ZT)薛涌:谈贫说富
  • (笔记)Kotlin——Android封装ViewBinding之二 优化
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (七)微服务分布式云架构spring cloud - common-service 项目构建过程
  • (十八)三元表达式和列表解析
  • (一)RocketMQ初步认识
  • (转)linux自定义开机启动服务和chkconfig使用方法
  • (总结)Linux下的暴力密码在线破解工具Hydra详解
  • .NET Core6.0 MVC+layui+SqlSugar 简单增删改查
  • .net php 通信,flash与asp/php/asp.net通信的方法
  • .net 简单实现MD5
  • .NET 使用 XPath 来读写 XML 文件
  • .net(C#)中String.Format如何使用
  • .net连接MySQL的方法
  • .NET性能优化(文摘)
  • .NET学习教程二——.net基础定义+VS常用设置
  • .NET应用架构设计:原则、模式与实践 目录预览
  • /etc/shadow字段详解
  • /etc/X11/xorg.conf 文件被误改后进不了图形化界面
  • /ThinkPHP/Library/Think/Storage/Driver/File.class.php  LINE: 48
  • @SuppressWarnings注解
  • @transactional 方法执行完再commit_当@Transactional遇到@CacheEvict,你的代码是不是有bug!...
  • [<事务专题>]