现在电商产业的多种多样,从最早的阿里巴巴、淘宝到现在的京东等等数不胜数,你还记得的京东的秒杀功能吗?小猿圈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开发,小猿圈还是很不错的,有需要的可以直接去看看的。