python抢购软件/插件/脚本附完整源码

距上篇关于淘宝抢购源码的文章已经过去五个月了,五个月来我通过不停的学习,掌握了更深层的抢购技术及原理,而上篇文章中我仅分享了关于加入购物车的商品的抢购源码,且有部分不足。

博主不提供任何服务器端程序,也不提供任何收费抢购软件。该文章仅作为学习selenium框架及GUI开发的一个示例代码。该思路可运用到其他任何网站,京东,天猫,淘宝均可使用,且不属于外挂或者软件之类,只属于一个自动化点击工具,如有侵犯到任何公司的合法权益,请私信联系,会第一时间将相关代码给予删除。

本篇文章我将附上完整源码,及其图形化开发的源码,及加密源码。代码稍长,如有疑惑可站内私信联系博主。

#!/usr/bin/python
# -*- coding: UTF-8 -*-
#made in white-night
#coding=utf-8

import re
from PyQt5.QtWidgets import *
import sys
from PyQt5 import QtCore, QtWidgets
from selenium import webdriver
import datetime
import time
import threading
import wmi

class LoginDlg(QDialog):
 def __init__(self, parent=None):
  super(LoginDlg, self).__init__(parent)

  usr = QLabel("请选择抢购方式:")
  pwd = QLabel("请输入抢购时间:")
  self.lineEdit = QLineEdit("",self)
  self.lb0 = QLabel("请输入待抢购网址:", self)
  self.lbl = QLabel("等待选择抢购方案", self)
  self.lb2 = QLabel("机器码:", self)
  self.lb3 = QLabel("授权码:", self)
  self.lb4 = QLabel("(获取授权请加群:462510942)", self)
  self.lb5 = QLabel("(请勿更改机器码,否则无法授权)", self)
  self.lineEdit2 = QLineEdit("", self)
  self.lineEdit1 = QLineEdit("", self)
  self.combo = QComboBox(self)
  self.combo.addItem("0、请选择抢购方案")
  self.combo.addItem("1、加购物车")
  self.combo.addItem("2、不加购物车")
  self.combo.addItem("3、抢购优惠券")

  # self.lineEdit.move(200,100)
  self.lb0.move(50, 100)
  self.lbl.move(50, 150)
  self.lb2.move(50, 200)
  self.lb3.move(50, 250)
  self.lb4.move(250, 250)
  self.lb5.move(250, 200)
  self.lineEdit2.move(100, 200)
  self.lineEdit1.move(100, 250)
  self.setGeometry(300, 300, 300, 200)
  self.setWindowTitle('QComboBox')
  self.show()
  self.dateTimeEdit = QtWidgets.QDateTimeEdit()
  self.dateTimeEdit.setGeometry(QtCore.QRect(140, 50, 121, 22))
  self.dateTimeEdit.setDateTime(QtCore.QDateTime(QtCore.QDate(2018, 11, 1), QtCore.QTime(9, 0, 0)))
  self.dateTimeEdit.setObjectName("dateTimeEdit")

  gridLayout = QGridLayout()
  gridLayout.addWidget(usr, 0, 0, 1, 1)
  gridLayout.addWidget(pwd, 1, 0, 1, 1)
  gridLayout.addWidget(self.lb0, 2, 0, 1, 1)
  gridLayout.addWidget(self.combo, 0, 1, 1, 3)
  gridLayout.addWidget(self.dateTimeEdit, 1, 1, 1, 3)
  gridLayout.addWidget(self.lineEdit, 2, 1, 1, 3)

  sqBtn = QPushButton("授权")
  okBtn = QPushButton("确定")
  cancelBtn = QPushButton("关闭软件")
  btnLayout = QHBoxLayout()

  btnLayout.setSpacing(60)
  btnLayout.addWidget(okBtn)
  btnLayout.addWidget(cancelBtn)
  btnLayout.addWidget(sqBtn)

  dlgLayout = QVBoxLayout()
  dlgLayout.setContentsMargins(40, 40, 40, 40)
  dlgLayout.addLayout(gridLayout)
  dlgLayout.addStretch(40)
  dlgLayout.addLayout(btnLayout)

  self.setLayout(dlgLayout)
  okBtn.clicked.connect(self.accept)
  cancelBtn.clicked.connect(self.reject)
  sqBtn.clicked.connect(self.cpuid)
  self.setWindowTitle("VN辅助抢购软件")
  self.resize(600, 400)

  self.thread_handle = None

 def thread_function(self,index):
  # 需要在线程加一个全局变量的判断 用于终止死循环 用来切换方案
  data = self.cpuid1[2] + self.cpuid1[5] + min(self.cpuid1) + self.cpuid1[-5] + self.cpuid1[1] + self.cpuid1[3] + self.cpuid1[4] + max(self.cpuid1) + self.cpuid1[1] + \
    self.cpuid1[-1] + self.cpuid1[-3] + "V" + "N" + self.cpuid1[-2] + self.cpuid1[0] + self.cpuid1[-4]
  if self.lineEdit1.text() == data and self.lineEdit2.text() == self.cpuid1:
   if index==0:
    self.lbl.setText("请选择抢购方案,然后点击确定")
   elif index==1:
    self.lbl.setText("成功调用加购物车方案")
    self.gouwubuy()
   elif index==2:
    self.lbl.setText("成功调用不加购物车方案")
    self.buy()
   else:
    self.lbl.setText("成功调用抢券方案")
    self.quanbuy()
  else:
   self.lbl.setText("请输入正确的授权码")

 def accept(self):
  # 线程创建
  self.thread_handle = threading.Thread(target=LoginDlg.thread_function,args=(self,self.combo.currentIndex()))
  self.thread_handle.start()
  return

 def gouwubuy(self):
  browser.get("https://cart.taobao.com/cart.htm")
  # 点击购物车里全选按钮
  buyt = self.dateTimeEdit.text()
  buyti = re.findall(" (.*)",buyt)
  buytime = buyti[0]+":00.000000"
  while True:
   now = datetime.datetime.now().strftime('%H:%M:%S.%f')
   # 对比时间,时间到的话就点击结算
   if now > buytime:
    # 点击结算按钮
    try:
     if browser.find_element_by_id("J_Go"):
      browser.find_element_by_id("J_Go").click()
    except:
     pass
    try:
     if browser.find_element_by_link_text('提交订单'):
      browser.find_element_by_link_text('提交订单').click()
      now1 = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
      self.lbl.setText("提交订单时间为:%s"% now1)
    except:
     pass

 def buy(self):
  browser.get(self.lineEdit.text())
  while True:
   try:
    if browser.find_element_by_link_text('立即购买'):
     browser.find_element_by_link_text('立即购买').click()
   except:
    pass
   try:
    if browser.find_element_by_link_text('提交订单'):
     browser.find_element_by_link_text('提交订单').click()
     now1 = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
     self.lbl.setText("提交订单时间为:%s" % now1)
     break
   except:
    pass

 def quanbuy(self):
  browser.get(self.lineEdit.text())
  while True:
   now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
   # 对比时间,时间到的话就点击结算
   try:
    if browser.find_element_by_link_text('立刻抢'):
     browser.find_element_by_link_text('立刻抢').click()
   except:
    pass
   try:
    if browser.find_element_by_link_text('点击领券'):
     browser.find_element_by_link_text('点击领券').click()
   except:
    pass

 def cpuid(self):
  w = wmi.WMI()
  cpus = w.Win32_Processor()
  for u in cpus:
   self.cpuid1 = u.ProcessorId
   self.lineEdit2.setText(self.cpuid1)

def login():
 # 打开淘宝登录页,并进行扫码登录
 browser.get("https://www.taobao.com")
 time.sleep(3)
 if browser.find_element_by_link_text("亲,请登录"):
  browser.find_element_by_link_text("亲,请登录").click()
 time.sleep(3)

if __name__ == '__main__':
 browser = webdriver.Chrome()
 browser.maximize_window()
 login()
 app = QApplication(sys.argv)
 dlg = LoginDlg()
 dlg.show()
 dlg.exec_()
 app.exit()

到此这篇关于python抢购软件/插件/脚本附完整源码的文章就介绍到这了,更多相关python抢购源码内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python实现淘宝秒杀聚划算抢购自动提醒源码

    说明 本实例能够监控聚划算的抢购按钮,在聚划算整点聚的时间到达时发出提醒(音频文件自己定义位置)并自动弹开页面(URL自己定义). 同时还可以通过命令行参数自定义刷新间隔时间(默认0.1s)和监控持续时间(默认1800s). 源码 # encoding: utf-8 ''''' @author: Techzero @email: techzero@163.com @time: 2014-5-18 下午5:06:29 ''' import cStringIO import getopt impor

  • Python实现抢购IPhone手机

    要买IPhone7主要有三个途径吧,一是官网下单:二是官网预约,直营店取货:三是第三方渠道.第一个渠道需要等3-4周,而且是直接快递过来,方便是方便,缺点主要是对物流不放心和怕遇到瑕疵机器退换货麻烦,优点是可以信用卡12期免息付款.第三个渠道加价且不放心.预约去直营店取机就是唯一选择. 预约是唯一的问题,官网上的预约号是不定时发放,基本刚出来几分钟就被抢走.编程改变世界,于是我用python写了一个查询脚本,在苹果放票的第一时间通过蜂鸣器通知抢预约. python代码如下 #!/usr/bin/

  • Python 实现毫秒级淘宝抢购脚本的示例代码

    本篇文章主要介绍了Python 通过selenium实现毫秒级自动抢购的示例代码,通过扫码登录即可自动完成一系列操作,抢购时间精确至毫秒,可抢加购物车等待时间结算的,也可以抢聚划算的商品. 博主不提供任何服务器端程序,也不提供任何收费抢购软件.该文章仅作为学习selenium框架的一个示例代码.该思路可运用到其他任何网站,京东,天猫,淘宝均可使用,且不属于外挂或者软件之类,只属于一个自动化点击工具,如有侵犯到任何公司的合法权益,会第一时间将相关代码给予删除. 直接上源码: # !/usr/bin

  • python抢购软件/插件/脚本附完整源码

    距上篇关于淘宝抢购源码的文章已经过去五个月了,五个月来我通过不停的学习,掌握了更深层的抢购技术及原理,而上篇文章中我仅分享了关于加入购物车的商品的抢购源码,且有部分不足. 博主不提供任何服务器端程序,也不提供任何收费抢购软件.该文章仅作为学习selenium框架及GUI开发的一个示例代码.该思路可运用到其他任何网站,京东,天猫,淘宝均可使用,且不属于外挂或者软件之类,只属于一个自动化点击工具,如有侵犯到任何公司的合法权益,请私信联系,会第一时间将相关代码给予删除. 本篇文章我将附上完整源码,及其

  • 使用python+pygame开发消消乐游戏附完整源码

    效果是这样的 ↓ ↓ ↓ 一.环境要求 windows系统,python3.6+ pip21+ 开发环境搭建地址 一起来学pygame吧 游戏开发30例(开篇词)--环境搭建+游戏效果展示 安装游戏依赖模块 pip install pygame 二.游戏简介 消消乐应该大家都玩过,或者看过.这个花里胡哨的小游戏 用python的pygame来实现,很简单. 今天带大家,用Python来实现一下这个花里胡哨的小游戏. 三.完整开发流程 1.项目主结构 首先,先整理一下项目的主结构,其实看一下主结构

  • 超详细OpenMV与STM32单片机通信 附完整源码

    目录 1.前言(闲话) 2.硬件连接 3.软件代码---OpenMV端 4.软件代码---STM32端 5.利用PC端测试数据数据是否发送接收正常 6.学习补充 (代码看不懂的时候可以来看一下) 8.博客更新 9.参考链接 10.完整版代码链接 1.前言(闲话) 最近在做电磁炮,发现题目需要用到颜色跟踪,于是花了一点时间学了一下OpenMV,只学习OpenMV是远远不够的,还需要实现与单片机的通信,本以为很简单,在CSDN上找了一些代码,直接拿来修改粘贴,把代码看明白了,这些只花了几个小时,本以

  • 基于spring-boot和docker-java实现对docker容器的动态管理和监控功能[附完整源码下载]

    docker简介 Docker 是一个开源的应用容器引擎,和传统的虚拟机技术相比,Docker 容器性能开销极低,因此也广受开发者喜爱.随着基于docker的开发者越来越多,docker的镜像也原来越丰富,未来各种企业级的完整解决方案都可以直接通过下载镜像拿来即用.因此docker变得越来越重要. 本文目的 本文通过一个项目实例来介绍如果通过docker对外接口来实现对docker容器的管理和监控. 应用场景: 对服务器资源池通过docker进行统一管理,按需分配资源和创建容器,达到资源最大化利

  • 微信小程序之侧边栏滑动实现过程解析(附完整源码)

    一.效果图 讲什么都不如直接上效果图好,所以我们先来看下实现效果如何. 通过滑动屏幕,或者点击左上角的图标按钮,都能实现侧边栏的划出效果. 二.原理解析 1.先实现侧边栏的内容,让侧边栏的内容居左,然后将侧边栏的内容置于屏幕的最底部. 2.接着实现主页的内容,并且让主页的内容默认是覆盖在侧边栏的内容上面. 3.然后,实现手指滑动屏幕的时候,主页的内容,向左滑动一定的宽度,让侧边栏的内容显示出来,而滑动的效果是通过 css 的 transition 来实现的. 三.源码 由于实现过程的时,我对代码

  • javascript实现打砖块小游戏(附完整源码)

    小时候玩一天的打砖块小游戏,附完整源码 在?给个赞? 实现如图 需求分析 1.小球在触碰到大盒子上.左.右边框,以及滑块后沿另一方向反弹,在碰到底边框后游戏结束: 2.小球在触碰到方块之后,方块消失: 3.消除所有方块获得游戏胜利: 4.可通过鼠标与键盘两种方式移动滑块: 5.游戏难度可调整,实时显示得分. 代码分析 1.html结构:左右两个提示框盒子分别用一个div,在其中添加需要的内容:中间主体部分用一个div,里面包含一个滑块(slider),一个小球(ball),以及一个装有所有方块的

  • 半小时实现Java手撸网络爬虫框架(附完整源码)

    最近在做一个搜索相关的项目,需要爬取网络上的一些链接存储到索引库中,虽然有很多开源的强大的爬虫框架,但本着学习的态度,自己写了一个简单的网络爬虫,以便了解其中的原理.今天,就为小伙伴们分享下这个简单的爬虫程序!! 首先介绍每个类的功能: DownloadPage.java的功能是下载此超链接的页面源代码. FunctionUtils.java 的功能是提供不同的静态方法,包括:页面链接正则表达式匹配,获取URL链接的元素,判断是否创建文件,获取页面的Url并将其转换为规范的Url,截取网页网页源

  • Java实现飞机大战游戏 附完整源码

    目录 飞机大战详细文档 实现效果: 结构设计 详细分析 Main界面类使用边框布局,给面板分三个区,如图所示 绘制背景地图 飞行道具类UML图 绘制线程: 如何让我们的游戏动起来 背景的绘制 我的飞机的绘制 移动线程 如何控制我的飞机移动? 敌方飞机线程 : 如何生成敌方飞机呢? 敌方子弹线程 : 使每一个敌方飞机开火 检测碰撞线程 : 在子弹与敌机碰撞时,移除敌机 其他功能:显示玩家hp,掉落道具,得分,升级,更换地图 飞机大战详细文档 文末有源代码,以及本游戏使用的所有素材,将plane2文

  • Android开发中总结的Adapter工具类【附完整源码下载】

    本文实例讲述了Android开发中总结的Adapter工具类.分享给大家供大家参考,具体如下: Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带.在常见的View(ListView,GridView)等地方都需要用到Adapter. 每个开发工程师都会有自己的一些常用到的工具类,今天我分享一下我自己总结的关于Adapter的工具类,话不多说直接上代码 CommonAdapter: public abstract class CommonAdapter

  • Android串口通信apk源码详解(附完整源码)

    1.SerialPortHelper「Android串口通信」介绍 原项目地址 https://github.com/freyskill/SerialPortHelper Android串口通讯助手可以用于需要使用串口通信的Android外设,该库有如下特点: 1.串口通信部分使用C++实现,在笔者接触的部分设备上实测,使用C++实现与Google官方提供的Demo的方式要快: 2.支持且必须设置串口接收最大数据长度,初始化库时填入该参数,这样设置的原因是考虑在实际使用中,规定的串口通信协议格式

随机推荐