现在电商产业的多种多样,从最早的阿里巴巴、淘宝到现在的京东等等数不胜数,你还记得的京东的秒杀功能吗?小猿圈python讲师今天就为你实现京东秒杀功能代码。
#Python3.5
#coding:utf-8
#import scrapy
from selenium import webdriver
import time
import datetime
driver = webdriver.Firefox()
driver.get('https:www.jd.com/')
class JDLOGIN(object):
def login_jd(self,num,pwd):
driver.find_element_by_link_text('你好,请登录').click()
time.sleep(10)
driver.find_element_by_link_text('账户登录').click()
time.sleep(3)
driver.find_element_by_id('loginname').send_keys(num)
driver.find_element_by_id('nloginpwd').send_keys(pwd)
time.sleep(3)
driver.find_element_by_id('loginsubmit').click()
time.sleep(5)
nowwhandle = driver.current_window_handle
driver.find_element_by_link_text('我的购物车').click()
allhandles = driver.window_handles
for handle in allhandles:
if handle != nowwhandle:
driver.switch_to_window(handle)#切换至窗口 购物车页面
time.sleep(5)
driver.find_element_by_link_text('去结算').click()
time.sleep(4)
def buy_on_time(self,buytime):
while True:
now = datetime.datetime.now()
if now.strftime('%Y-%m-%d %H:%M:%S') == buytime:
driver.find_element_by_id('order-submit').click()
time.sleep(3)
print(now.strftime('%Y-%m-%d %H:%M:%S'))
print('successful!!!')
time.sleep(0.5)
# 返回原先到的窗口
#driver.switch_to_window(nowwhandle)
def start(self,num,pwd,buytime):
self.login_jd(num,pwd)
self.buy_on_time(buytime)
jdlogin=JDLOGIN()
jdlogin.start('手机号','密码','秒杀时间' )
需要先将秒杀物品添加至购物车(必须为秒杀物品,秒杀无品加入购物车后结算时不需要勾选【全选框】),并提前设置默认收货地址。该代码为闲时所写,没有进一步优化,面向对象的函数也不够精简,不过功能已经实现需要在cmd命令行安装selenium包:pipinstallselenium。
上面就是实现京东秒杀功能代码了,还在等什么快去装环境运行一下去吧,如果遇到问题可以找小猿圈python讲师去解答,如果你想学习python开发,小猿圈还是很不错的,有需要的可以直接去看看的。
网友评论