新手上路之旅~
安装selenium命令:pip/pip3 install selenium
我的思想流程:登录 - 检测是否可以结算 (可以结算就去结算) - 提交订单
我使用的环境:Python3.6.5 ,火狐浏览器
需要用到 geckodriver , 下载地址:https://github.com/mozilla/geckodriver/releases
引入工具
# 引入geckodriver,根据您的机器实际路径
firefox = "/xxx/geckodriver/geckodriver"
browser = webdriver.Firefox(executable_path= firefox)
browser.maximize_window()
登录
# 打开淘宝登录页,并进行扫码登录
browser.get("https://www.taobao.com")
time.sleep(3)
if browser.find_element_by_link_text("亲,请登录"):
browser.find_element_by_link_text("亲,请登录").click()
print("请在15秒内完成扫码")
time.sleep(15)
browser.get("https://cart.taobao.com/cart.htm")
time.sleep(3)
now = datetime.datetime.now()
print('login success:', now.strftime('%Y-%m-%d %H:%M:%S'))
死循环判断
# 设置开始时间
start_time = '2019-06-14 00:00:00.000000'
while True:
now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')
if now > times:
if browser.find_element_by_id('J_SelectAllCbx2'):
browser.find_element_by_id("J_SelectAll2").click()
## 去往结算方法
goShip()
break
time.sleep(0.01)
到时间就去GO结算
# 这里,需要延迟0.01秒,如果没有会结算失败
def goShip():
time.sleep(0.01)
while True:
try:
if browser.find_element_by_id('J_Go'):
ship_btn = browser.find_element_by_id('J_Go')
if ship_btn.get_attribute('class') == "submit-btn":
browser.find_element_by_id("J_Go").click()
print("结算成功.下一步,提交订单")
# 跳转到提交订单方法,请看下面
submitOrder()
break
else:
if browser.find_element_by_id('J_SelectAllCbx2'):
browser.find_element_by_id("J_SelectAll2").click()
except:
print("结算发生异常")
提交订单
def submitOrder():
print("start submit order")
time.sleep(0.01)
tijiao_zongshu = 0
while True:
tijiao_zongshu += 1
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')
print("抢购成功时间:%s" % now1)
break
except:
print('再次尝试提交订单,当前第 %s 次提交' % tijiao_zongshu)
好了,谢谢您的观看。