Python制作脚本帮女朋友抢购清空购物车

编辑: admin 分类: python 发布时间: 2021-12-03 来源:互联网
目录
  • 爬取目标
  • 工具使用
  • 需求分析
  • 项目思路解析
    • selenium安装配置
    • 项目解析
  • 简易源码分享

    大家好,我是辣条。

    辣条的一个朋友最近跟我诉苦:女朋友沉迷淘宝抢购无法自拔,大晚上不睡觉都在定时抢购,真是败家。

    都是好朋友辣条肯定帮忙,不就是定时抢购,定时清空购物车嘛,这叫安排。

    爬取目标

    网站:淘宝

    image.jpg

    工具使用

    开发工具:pycharm 开发环境:python3.7, Windows10 使用工具包:selenuim

    需求分析

    我们的目标是秒杀淘宝的订单,这里面有几个关键点,首先需要登录淘宝,其次你需要准备好订单,最后要在指定时间快速提交订单。

    项目思路解析

    selenium安装配置

    selenium是Python自动化测试的工具库,需要配置一些环境驱动 selenium安装

    pip install selenium

    Selenium安装好之后,并不能直接使用,它需要与浏览器进行对接。这里拿Chrome浏览器为例。若想使用Selenium成功调用Chrome浏览器完成相应的操作,需要通过ChromeDriver来驱动。 链接:

    https://chromedriver.storage.googleapis.com/index.html 根据自身的chorme版本选择安装的驱动版本

    image.jpg

    image.jpg

    下载完成之后,解压,将其放置在Python安装路径下python文件夹中即可

    image.jpg

    项目解析

    尝试通过selenium打开淘宝首页,检验是否安装成功

    from selenium import webdriver
    driver = webdriver.Chrome()
    driver.maximize_window()
    driver.get(https://www.taobao.com)
    通过xpath定位选取到登录标签,抢购脚本需要先知道你购买的东西是什么 

    image.jpg

    登录的方式课自行选择(可账户密码登录,也可扫码登录,辣条在这里用的扫码登录)

    登录成功后点击购物车,选取你需要的商品数据(可全选,可自己手动勾选)

    image.jpg

    在点击结算按钮

    image.jpg

    设定一个结算时间,你需要下单的时间

    image.jpg

    等待时间的到来 点击提交订单按钮

    image.jpg

    简易源码分享

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    # @Author  : BaiChuan
    # @File    : 淘宝抢购.py
    ​
    ​
    from selenium import webdriver
    import datetime
    import time
    ​
    ​
    driver = webdriver.Chrome()
    driver.maximize_window()
    ​
    ​
    def login():
        # 打开淘宝登录页,并进行扫码登录
        driver.get("https://www.taobao.com")
        time.sleep(3)
        if driver.find_element_by_link_text("亲,请登录"):
            driver.find_element_by_link_text("亲,请登录").click()
    ​
        print("请在30秒内完成扫码")
        time.sleep(30)
    ​
        driver.get("https://cart.taobao.com/cart.htm")
        time.sleep(3)
        # 点击购物车里全选按钮
        if driver.find_element_by_id("J_SelectAll1"):
            driver.find_element_by_id("J_SelectAll1").click()
        now = datetime.datetime.now()
        print('login success:', now.strftime('%Y-%m-%d %H:%M:%S:%f'))
    ​
    ​
    def buy(buytime):
        while True:
            now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
            print("当前时间" + now)
            # 对比时间,时间到的话就点击结算
            if now > buytime:
                try:
                    # 点击结算按钮
                    if driver.find_element_by_id("J_Go"):
                        driver.find_element_by_id("J_Go").click()
                    driver.find_element_by_link_text('提交订单').click()
                except:
                    time.sleep(0.1)
            print(now)
            time.sleep(0.1)
    ​
    if __name__ == "__main__":
        # times = input("请输入抢购时间:")
        # 时间格式:"2018-09-06 11:20:00.000000"
        login()
        buy("2021-08-24 14:30:00.000000")

    脚本是弄完了不过事情好像没完......

    到此这篇关于Python制作脚本抢购清空购物车的文章就介绍到这了,更多相关Python抢购脚本内容请搜索hwidc以前的文章或继续浏览下面的相关文章希望大家以后多多支持hwidc!

    【文章出处:http://www.nextecloud.cn/sin.html欢迎留下您的宝贵建议】