ticket-purchase
一个用于大麦网自动抢票的工具,支持人员、城市、日期场次、价格选择等功能。
Github地址
https://github.com/WECENG/ticket-purchase
功能介绍
网页版抢票-
•技术栈:使用Selenium模拟浏览器操作,实现自动登录和购票。
-
•流程:
-
1. 打开大麦网页面并登录。
-
2. 根据配置文件选择演唱会场次、观演人员、城市、日期、价格等。
-
3. 自动提交订单。
-
•配置文件:
-
•config.json:用于指定抢票的相关信息,包括目标地址、观演人姓名、城市、日期、价格等。
-
• 示例内容:
{
"index_url":"https://www.damai.cn/",
"login_url":"https://passport.damai.cn/login",
"target_url":"https://detail.damai.cn/item.htm?id=123456",
"users":["名字1","名字2"],
"city":"广州",
"date":"2023-10-28",
"price":"1039",
"if_listen":true,
"if_commit_order":true
}
-
•技术栈:使用Appium实现对大麦网App的自动化操作。
-
•环境搭建:
-
1. 安装Appium Server和Appium Client。
-
2. 配置Android SDK环境变量。
-
3. 启动Appium Server。
-
•代码示例:
fromappiumimportwebdriver
fromappium.options.common.baseimportAppiumOptions
device_app_info = AppiumOptions()
device_app_info.set_capability('platformName','Android')
device_app_info.set_capability('platformVersion','10')
device_app_info.set_capability('deviceName','YourDeviceName')
device_app_info.set_capability('appPackage','cn.damai')
device_app_info.set_capability('appActivity','.launcher.splash.SplashMainActivity')
device_app_info.set_capability('unicodeKeyboard',True)
device_app_info.set_capability('resetKeyboard',True)
device_app_info.set_capability('noReset',True)
device_app_info.set_capability('newCommandTimeout',6000)
device_app_info.set_capability('automationName','UiAutomator2')
driver = webdriver.Remote('http://127.0.0.1:4723', options=device_app_info)
使用方法
网页版抢票1. 安装Python 3.9+。
2. 安装Selenium库:pip3 install selenium
。
3. 下载并安装Google Chrome浏览器。
4. 修改config.json
文件,填写抢票相关信息。
5. 运行脚本:cd damai && python3 damai.py
。
1. 安装Node.js和npm。
2. 安装Android SDK并配置环境变量。
3. 安装Appium Server和Client:
npm install -g appium
npm install appium-uiautomator2-driver
4. 启动Appium Server:appium --use-plugins uiautomator2
。
5. 安装Appium Python客户端:pip3 install appium-python-client
。
6. 运行脚本:cd damai_appium && python3 damai_appium.py
。