Python | 淘宝秒杀脚本

简介: 最近开始学习Python了,浅浅一看,发现很多和JavaScript类似的东西。原来测试用`selenium`,似乎可以简单的秒杀脚本就能实现了?于是查了一下资料,模仿着写了一个。

最近开始学习Python了,浅浅一看,发现很多和JavaScript类似的东西。原来测试用selenium,似乎可以简单的秒杀脚本就能实现了?于是查了一下资料,模仿着写了一个。

思路

  • 打开浏览器
  • 打开指定的网址
  • 扫码登录或者输入密码登录,这里是需要人工扫码
  • 跳转到购物车页面
  • 点击全选
  • 点击结算
  • 点击提交订单

    代码

from selenium import webdriver
from selenium.webdriver.common.by import By
import datetime
import time

# 启动火狐浏览器的驱动器
driver = webdriver.Chrome()
# 最大化浏览器
driver.maximize_window()


# 传入用户名密码,登录淘宝
def login():
    # 打开淘宝
    driver.get("https://www.taobao.com")

    # 查找文本,登录
    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()
    time.sleep(3)
    now = datetime.datetime.now()
    print('登录成功:', now.strftime('%Y-%m-%d %H:%M:%S'))


def buy(buytime):
    while True:
        now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
        if now == buytime:
            try:
                # 点击结算按钮
                if driver.find_element(By.ID, "J_Go"):
                    driver.find_element(By.ID, "J_Go").click()
                    print("结算成功")
                    submit()
            except:
                pass
        print(now)
        time.sleep(0.01)
        break


def submit():
    while True:
        try:
            if driver.find_element(By.LINK_TEXT, '提交订单'):
                driver.find_element(By.LINK_TEXT, '提交订单').click()
                now1 = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
                print("抢购成功时间:%s" % now1)
                break
        except:
            print("再次尝试提交订单")
            time.sleep(0.01)


if __name__ == "__main__":
    # 登录
    login()
    # 设置抢购时间
    buy('2023-02-25 20:54:00')

结论

  • 一直到提交订单这里,商品已经锁定了,就直接人工输入密码即可购买。这玩意还是可以的嘛。
  • 于是又想到了,能不能在写一个nodejs的版本,都是脚本语言嘛,大致差不多吧。

传送门:Python版本的秒杀脚本

相关文章
|
2月前
|
Linux Shell Python
Linux执行Python脚本
Linux执行Python脚本
30 1
|
3月前
|
Web App开发 数据采集 自然语言处理
python脚本抢各大平台大额优惠卷
python脚本抢各大平台大额优惠卷
53 0
|
25天前
|
JSON 测试技术 持续交付
自动化测试与脚本编写:Python实践指南
【4月更文挑战第9天】本文探讨了Python在自动化测试中的应用,强调其作为热门选择的原因。Python拥有丰富的测试框架(如unittest、pytest、nose)以支持自动化测试,简化测试用例的编写与维护。示例展示了使用unittest进行单元测试的基本步骤。此外,Python还适用于集成测试、系统测试等,提供模拟外部系统行为的工具。在脚本编写实践中,Python的灵活语法和强大库(如os、shutil、sqlite3、json)助力执行复杂测试任务。同时,Python支持并发、分布式执行及与Jenkins、Travis CI等持续集成工具的集成,提升测试效率和质量。
|
1月前
|
存储 监控 异构计算
【Python】GPU内存监控脚本
【Python】GPU内存监控脚本
|
1月前
|
Ubuntu Unix Linux
【Linux/Ubuntu】Linux/Ubuntu运行python脚本
【Linux/Ubuntu】Linux/Ubuntu运行python脚本
|
2月前
|
XML Shell Linux
性能工具之 JMeter 使用 Python 脚本快速执行
性能工具之 JMeter 使用 Python 脚本快速执行
41 1
性能工具之 JMeter 使用 Python 脚本快速执行
|
2月前
|
计算机视觉 Python
怎么使用Python轻松打造淘宝主图视频生成神器
怎么使用Python轻松打造淘宝主图视频生成神器
41 0
|
2月前
|
数据采集 测试技术 Python
Python自动化脚本的魅力与实践
Python自动化脚本的魅力与实践
54 0
|
2月前
|
数据安全/隐私保护 Python
使用Python脚本实现图片合成PDF功能
使用Python脚本实现图片合成PDF功能
28 0
|
2月前
|
安全 数据安全/隐私保护 开发者
如何使用Pyarmor保护你的Python脚本
如何使用Pyarmor保护你的Python脚本
51 0