华为mate40pro抢购自用神器开源妈妈再也担心我买不着了
听说现在是地表性能最好的手机
我最近老是抢不到,我相信很多人和我一样想支持,却抢不到,所以它来了!带着源码来了!
支持N多账号同时抢购,或者同一个账号开多个页面同时抢
(不用担心,要是你运气好几个都成了,你不付款,会自动取消的)
操作说明:
main.exe成品
main.py源码
搞源码的,你需要把这个chromedriver.exe放你的python 环境的\\Scripts文件夹中
一般人只需要运行main.exe
第一次运行,请先点1添加添加账号
如果你要自定义产品和按钮
F12弹出调试工具 然后按步骤获取目标按钮的css选择器文本
#pip selenium -i [url=https://pypi.tuna.tsinghua.edu.cn/simple/]https://pypi.tuna.tsinghua.edu.cn/simple/[/url] #然后记得把chromedriver.exe放你的python 环境的\\Scripts文件夹中 from selenium import webdriver from PyQt5.QtWidgets import QMessageBox, QMainWindow,QTextEdit import time, json class HaiWei(): def __init__(self): # 默认的链接 self.url = \'https://www.vmall.com/product/10086726905036.html\' # 默认的按钮 因为那个按钮的类名是会变的,所以只能写child 2 用上一个不会变的a标签来定位按钮 self.selector = \'#pro-operation > a:nth-child(2)\' self.start_kg = False def addLogin(self, name, window_main,ms): \'\'\' 增加一个登录的cookies 就是分别 登录一下账号 :return: \'\'\' # 创建线程 driver = webdriver.Chrome() driver.get(self.url) QMessageBox.information(window_main, \'提醒:\', \'请在登入好账号后点击确定\', QMessageBox.Ok) dictCookies = driver.get_cookies() jsonCookies = json.dumps(dictCookies) # 登录完成后,将cookie保存到本地 with open(f\'cookies/{name}.json\', \'w\') as f: f.write(jsonCookies) ms.log_add.emit(f\'账号:{name} 保存成功!\') driver.close() def start(self, name, driver,ms): \'\'\' 开始自动多线程抢华为mate40pro手机,因为我 没成功过,所以如果成功了请自己判断 :param name: 账号备注 :param driver: 浏览器 :param ms: 信号 :return: \'\'\' # 超时 driver.set_page_load_timeout(5000) # 防止页面加载个没完 # 访问一次,不然容易设置不了cookies driver.get(self.url) # 删除第一次建立连接时的cookie driver.delete_all_cookies() # 读取登录时存储到本地的cookie with open(f\'cookies/{name}.json\', \'r\', encoding=\'utf-8\') as f: listCookies = json.loads(f.read()) for cookie in listCookies: # driver.delete_cookie(cookie[\'name\']) driver.add_cookie({ "domain": cookie[\'domain\'], "httpOnly": cookie[\'httpOnly\'], "name": cookie[\'name\'], "path": cookie[\'path\'], "secure": cookie[\'secure\'], "value": cookie[\'value\'] }) driver.get(self.url) i=True while True: if self.start_kg == True: if i == True: ms.log_add.emit(f\'账号:{name} 现在开始,祝您好运!\') i = False try: elem = driver.find_element_by_css_selector(self.selector) elem.click() except: break time.sleep(0.3) ms.log_add.emit(f\'账号:{name} 点击成功!是否抢到资格请肉眼看咯!\') def setting(self, url, selector): \'\'\' 自定义抢购的链接和以及疯狂点击的按钮(css选择器文本输入方法也很简单) 获取选择器selector文本步骤: 1.打开你的网站然后在浏览器中找到你需要不断点击的按钮后右键,菜单选择[审核元素\\检查] 2.之后就会出来调试器,就在高亮的元素上右键菜单依次找到 Copy > Copy selector 然后点击就成功复制到文本了 3.将文本填进去就好了(最好是懂点css的基础,或者自己找规律来改) :param url:自定义网址 :param selector:css选择器文本 :return: \'\'\' if selector != None and selector != \'\': self.url = url else: self.url =\'https://www.vmall.com/product/10086726905036.html\' if selector != None and selector != \'\': self.selector = selector else: self.selector = \'#pro-operation > a:nth-child(2)\' print(self.url ,self.selector )
20201112更新说明:
1.修复了点成功后退出的bug
2.新增了UI界面更加人性化
3.新增一些文字说明,和优化一些逻辑
4.去掉讨厌的黑框框..请重新下载时间20201112 8:38
最新的版本20201113更新说明:
1.视频中也可以看到,发现点击速度还是不太够,所以加快了
2.文字说明修正
3.增加图标
源码和成品:
https://www.lanzoui.com/isk07icki9c
我刚写完,准备靠它买我的第一部华为手机了!支持国产从你我做起!你值得拥有!
这里补充一个东西,那就是如果抢mate40pro+ 或者保时捷,,那个目标按钮编辑框内容改成:
#pro-operation > a
温馨提示:cookies保存有效时间是有限的,所以尽量在快到时间的时候提前个20-10分钟重新的去登入账号获取cookies
常见问题解决办法:
1.右键管理员权限运行
2.没有google浏览器,或者版本低于86,请自行卸载后下载最新版本(一般一点就崩溃的,基本就是这个原因)
https://www.google.cn/chrome/
演示视频:
https://www.bilibili.com/video/BV1q54y1z7Fc
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!603313839@qq.com
2. 请您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源
3. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
4. 不保证所提供下载的资源的准确性、安全性和完整性,源码仅供下载学习之用!
5. 不保证所有资源都完整可用,不排除存在BUG或残缺的可能,由于资源的特殊性,下载后不支持退款。
6. 站点所有资源仅供学习交流使用,切勿用于商业或者非法用途,与本站无关,一切后果请用户自负!