用python写一个自动抢票程序
时间: 2023-09-13 14:06:05 浏览: 175
好的,自动抢票程序可以通过模拟用户操作,实现自动化抢票。以下是一个简单的Python脚本,可以实现12306网站的自动抢票功能:
```python
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
# 初始化浏览器
driver = webdriver.Chrome()
# 打开12306网站
driver.get("https://www.12306.cn/index/")
# 等待用户登录
time.sleep(30)
# 进入购票页面
driver.get("https://kyfw.12306.cn/otn/leftTicket/init")
# 设置出发地和目的地
fromStation = driver.find_element_by_id('fromStationText')
fromStation.clear()
fromStation.send_keys('上海')
toStation = driver.find_element_by_id('toStationText')
toStation.clear()
toStation.send_keys('北京')
# 设置出发日期
trainDate = driver.find_element_by_id('train_date')
trainDate.clear()
trainDate.send_keys('2022-01-01')
# 查询车次
searchBtn = driver.find_element_by_id('query_ticket')
searchBtn.click()
# 选择车次和座位类型
time.sleep(5)
trainNum = driver.find_element_by_xpath('//*[@id="ticket_1"]/td[1]/div/div[1]')
trainNum.click()
seatType = driver.find_element_by_xpath('//*[@id="seatType_1"]')
seatType.click()
# 提交订单
submitBtn = driver.find_element_by_id('submitOrder_id')
submitBtn.click()
# 确认订单
time.sleep(5)
confirmBtn = driver.find_element_by_id('qr_submit_id')
confirmBtn.click()
# 关闭浏览器
driver.close()
```
这个脚本使用了Selenium库来模拟用户操作,打开12306网站、登陆、查询车票、选择车次和座位类型、提交订单和确认订单等操作都在代码中实现。需要注意的是,脚本中的时间等待需要根据实际情况进行调整,以确保程序的正常运行。
阅读全文