好友
阅读权限30
听众
最后登录1970-1-1
|
本帖最后由 18382747915 于 2018-9-25 15:58 编辑
输入地址,时间,车票类型即可查询车票,
做了一半,想做成全自动抢票,目前遇到的问题是12306的验证码识别,正在努力解决中
先把这个半成品发出来:
源码如下:
def select():
y = input("请输入出发地:")
chufadi=csm(y)
if chufadi!='0':
y=input("请输入目的地:")
daodadi=csm(y)
if daodadi!='0':
date=input("请选择出发日期(日期格式:xxxx-xx-xx):")
print("0:成人票")
print("1:学生票")
shenfen=input("请选择")
if shenfen=='0':
shenfen='0X00'
elif shenfen=='1':
shenfen='ADULT'
else:
print('车票类型选择错误')
url='https://kyfw.12306.cn/otn/leftTicket/queryA?leftTicketDTO.train_date=%s&leftTicketDTO.from_station=%s&leftTicketDTO.to_station=%s&purpose_codes=%s'%(date,chufadi,daodadi,shenfen)
header = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:62.0) Gecko/20100101 Firefox/62.0',
'Host': 'kyfw.12306.cn',
'Referer':'https://kyfw.12306.cn/otn/leftTicket/init'}
reque=requests.get(url,headers=header)
html=json.loads(reque.text.strip('()[]'))
html=html['data']
html = html['result']
h=len(html)
if h>0:
# text=re.findall('(.*?)\|预订\|(.*?)\|(.*?)\|(.*?)',str(html),re.S)
text=re.findall('\|预订\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|Y\|',str(html),re.S)
# print(text)
print('一共%s趟列车'%str(len(text)))
for i in text:
print('车次:%s'%i[1])
print('出发时间:%s'%i[6])
print('到达时间:%s'% i[7])
print('历时:%s'%i[8])
print('-------------------------------')
else:
print("没票了")
else:
print("未找到目的地城市的车站,请检查输入是否错误")
else:
print("未找到该城市的车站,请检查输入是否错误")
def csm(y):
url = 'https://im0x.com/C/detail/155'
date = requests.get(url)
html = date.text
Citycode =re.findall('[a-z]\|(.*?)\|(.*?)\|(.*?)\|(.*?)\|\d',html,re.S)
Citycode=str(Citycode)
Citycode=re.findall("('("+y+".*?), (.*?),(.*?),(.*?))",Citycode,re.S)
cou=len(Citycode)
if cou>0:
for i ,l in enumerate(Citycode):
image_list=l[0].split(",")
print ('%s:%s'%(i,eval(image_list[0])))
i=int(input("请选择:"))
lit=list(Citycode)
chengshima=lit[2]
chengshima=eval(chengshima)
return chengshima
else:
return "0"
if __name__ == '__main__':
select()
|
-
免费评分
-
参与人数 5 | 吾爱币 +5 |
热心值 +5 |
收起
理由
|
雪千渔
| + 1 |
+ 1 |
谢谢@Thanks! |
dzblh
| + 1 |
+ 1 |
热心回复! |
似梦流年丶
| + 1 |
+ 1 |
12306更新维护验证都挺勤的,不知道做出来撑不撑得住 |
林中雾121
| + 1 |
+ 1 |
用心讨论,共获提升! |
微笑¥
| + 1 |
+ 1 |
谢谢@Thanks! |
查看全部评分
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|