千锋扣丁学堂Python培训之实现京东秒杀功能代码
今天千锋扣丁学堂Python培训老师给大家分享一篇关于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开发方面内容的小伙伴,请关注扣丁学堂Python培训官网、微信等平台,扣丁学堂IT职业在线学习教育有专业的Python讲师为您指导,此外扣丁学堂老师精心推出的Python视频教程定能让你快速掌握Python从入门到精通开发实战技能。扣丁学堂Python技术交流群:279521237。
相关推荐
YENCSDN 2020-11-17
lsjweiyi 2020-11-17
houmenghu 2020-11-17
Erick 2020-11-17
HeyShHeyou 2020-11-17
以梦为马不负韶华 2020-10-20
lhtzbj 2020-11-17
夜斗不是神 2020-11-17
pythonjw 2020-11-17
dingwun 2020-11-16
lhxxhl 2020-11-16
坚持是一种品质 2020-11-16
染血白衣 2020-11-16
huavhuahua 2020-11-20
meylovezn 2020-11-20
逍遥友 2020-11-20
weiiron 2020-11-16