python+selenium小米商城红米K40手机抢购

python+selenium小米商城红米K40手机抢购

使用环境

1、python3
2、selenium

selenium使用简述

1、安装selenium

pip install selenium

2、安装ChromeDriver
下载地址:http://chromedriver.storage.googleapis.com/index.html
注意:下载的ChromeDriver需要与Chrome版本一致。
1)Chrome版本查看:
在这里插入图片描述
2)ChromeDriver对应版本下载:
在这里插入图片描述
3)ChromeDriver下载后解压到任意文件夹,建议可以放到项目目录中,拷贝chromedriver可执行文件的路径,代码中需要用到:

代码实现

from selenium import webdriver
import time
import datetime


class XiaoMi():
    def __init__(self):
        self.name = "" #登陆小米商城用户名
        self.pwd = "" #登陆小米商城密码
        self.buytime = "2021-03-12 10:00:00"  # 指定秒杀时间,并且开始等待秒杀
        self.chrome_driver = ""  #chromedriver的文件位置 例如:self.chrome_driver = 'C:/Desktop/lib/chromedriver.exe'  

        self.browser = webdriver.Chrome(executable_path = self.chrome_driver)

    def login(self):
        self.browser.get('https://account.xiaomi.com/')  # 登录网址
        time.sleep(2)

        self.browser.find_element_by_name("account").send_keys(self.name)
        self.browser.find_element_by_name("password").send_keys(self.pwd)
        self.browser.find_element_by_xpath('//*[@type="submit"]').click()
        time.sleep(3)
        #抢购红米K40
        self.buy_on_time()

    #抢手机红米K40
    def buy_on_time(self):
        self.browser.get("https://www.mi.com/buy/detail?product_id=13544")  # 切换到秒杀页面
        time.sleep(2)
        self.browser.find_element_by_xpath('//div[@class="sale-btn"]/a').click()  # 再次登陆
        time.sleep(2)
        self.browser.find_element_by_xpath("//div[@class='option-box']/ul/li[4]").click()  # 选择12G+256G版本
        print('登录成功,正在等待抢购···')

        while True:  # 不断刷新时钟
            now = datetime.datetime.now()
            if now.strftime('%Y-%m-%d %H:%M:%S') == self.buytime:
                self.browser.find_element_by_xpath('//div[@class="sale-btn"]/a').click()  # 购买按钮的Xpath
                print('下单成功,请抓紧付款!')
            time.sleep(0.01)  # 注意刷新间隔时间要尽量短

if __name__ == '__main__':
    MS = XiaoMi()
    MS.login()
  • 5
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 19
    评论
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值