自我。司机。find _ element _ by _ XPath('/html/body/div[2]/div[2]/div/div/div[3]/div[2]).单击()
目录
知识点:
def isElementExist(self,element):
标志=真
浏览器=自我驱动
尝试:
浏览器。通过XPath(元素)查找元素
返回标志
除了:
标志=假
返回标志
开发环境:
定义choose_ticket(自己):
如果self.status==2: #登录成功入口
打印('='*30)
打印(' ###)开始进行日期及票价选择###')
while self.driver.title.find('确认订单')==-1: # 如果跳转到了订单结算界面就算这步成功了,否则继续执行此步
尝试:
购买按钮=自己。司机。find _ element _ by _ class _ name('购买BTN ').文本
if buybutton=='提交缺货登记:
# 改变现有状态
self.status=2
self.driver.get(target_url)
打印(' ###)抢票未开始,刷新等待开始###')
继续
elif buybutton=='立即预定:
自我。司机。find _ element _ by _ class _ name('购买BTN ').单击()
# 改变现有状态
self.status=3
elif buybutton=='立即购买:
自我。司机。find _ element _ by _ class _ name('购买BTN ').单击()
# 改变现有状态
self.status=4
# 选座购买暂时无法完成自动化
elif buybutton=='选座购买:
自我。司机。find _ element _ by _ class _ name('购买BTN ').单击()
self.status=5
除了:
打印(' ###)未跳转到订单结算界面###')
标题=self.driver.title
if title=='选座购买:
# 实现选座位购买的逻辑
self.choice_seats()
elif title=='确认订单:
虽然正确:
# 如果标题为确认订单
打印('等待.')
如果自我。iselementexist('//*[@ id=' container ']/div/div[9]/button '):
self.check_order()
破裂
先导入本次所需的模块
定义选择_座位(自己):
while self.driver.title=='选座购买:
而自我。iselementexist('//*[@ id=' app ']/div[2]/div[2]/div[1]/div[2]/img '):
# 座位手动选择选中座位之后//*[@ id=' app ']/div[2]/div[2]/div[1]/div[2]/img就会消失
打印('请快速的选择您的座位!')
# 消失之后就会出现//*[@ id=' app ']/div[2]/div[2]/div[2]/div
而自我。iselementexist('//*[@ id=' app ']/div[2]/div[2]/div[2]/div '):
# 找到之后进行点击确认选座
自我。司机。find _ element _ by _ XPath('//*[@ id=' app ']/div[2]/div[2]/div[2]/button ').单击()
第一步,实现免登录
定义检查_订单(自身):
if self.status in [3,4,5]:
打印(' ###)开始确认订单###')
尝试:
# 默认选第一个购票人信息
自我。司机。find _ element _ by _ XPath('//*[@ id=' container ']/div/div[2]/div[2]/div[1]/div/label ').单击()
例外情况为e:
打印(' ###)购票人信息选中失败,自行查看元素位置###')
打印(五)
# 最后一步提交订单
time.sleep(0.5) #太快会影响加载,导致按钮点击无效
自我。司机。find _ element _ by _ XPath('//div[@ class=' w 1200 ']//div[2]//div//div[9]//button[1]').单击()
确定目标,设置全局变量
定义完成时间(自身):
self.driver.quit()
初始化加载
if __name__=='__main__ ':
尝试:
con=Concert() #具体如果填写请查看类中的初始化函数
con.enter_concert() #打开浏览器
con.choose_ticket() #开始抢票
例外情况为e:
打印(五)
con.finish()
登录调用设置cookie
关于用Python制作自动抢票的脚本以便成功买到演唱会门票的这篇文章到此为止。更多相关Python自动抢票内容,请搜索我们之前的文章或者继续浏览下面的相关文章。希望大家以后能多多支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。