辣条的一个朋友最近跟我诉苦:女朋友沉迷淘宝抢购无法自拔,大晚上不睡觉都在定时抢购,真是败家。
都是好朋友辣条肯定帮忙,不就是定时抢购,定时清空购物车嘛,这叫安排。
爬取目标
网站:https://www.taobao.com/
工具使用
开发工具:pycharm 开发环境:python3.7, Windows10 使用工具包:selenuim
需求分析
我们的目标是秒杀淘宝的订单,这里面有几个关键点,首先需要登录淘宝,其次你需要准备好订单,最后要在指定时间快速提交订单。
项目思路解析
selenium安装配置
selenium是Python自动化测试的工具库,需要配置一些环境驱动 selenium安装
代码语言:javascript复制from selenium import webdriver
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://www.taobao.com")
代码语言:javascript复制#!/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")
脚本是弄完了不过事情好像没完......