往期回顾:
selenium+python实现12306自动化抢火车票(一)
1、根据乘车人姓名匹配,支持1人或多人选择
定位出所有乘车人的元素集,根据姓名集合去元素集里循环迭代匹配,匹配上了操作选中
ele_all=driver.find_elements(By.XPATH, "//*[@id='normal_passenger_id']/li")#定位所有乘车人for i in name_list: for j in range(len(ele_all)): if i==ele_all[j].text: driver.find_element(By.ID, "normalPassenger_{0}".format(j)).click()#选择乘车人 print("选择乘车人【{0}】".format(i))
2、车次未开放或已售完,持续查询
车次售完了,或还未开售,这时,预定按钮是灰色不可点击的,这里要做特殊处理,可点击的预定td标签下有a标签,不可点击预定td标签下没有a标签,这时可根据是否有a标签判断预定按钮是否可点击,可点击继续