吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 21440|回复: 83
上一主题 下一主题
收起左侧

[Python 转载] 最新版12306抢票程序源代码

  [复制链接]
跳转到指定楼层
楼主
呙翰林 发表于 2019-1-7 19:47 回帖奖励
本帖最后由 呙翰林 于 2019-1-7 20:32 编辑

2019年1月7日 最新python 12306抢票源代码
本人新手,由于最近春节回家高峰期,想着用Python 写一个抢票软件,亲测可用,供大家学习交流
注意事项:
     1 . 默认手动输入验证码坐标,附带云打码接口,懂得可以自己弄一下
     2 . 一些个人隐私信息自己填写
     3 . 抢票完成后会有邮箱接口,发送邮箱提示抢票成功(懂的可以自己弄一下)
     4 . 运行环境  python 2.7  
下面上部分代码,看看效果 :
[Python] 纯文本查看 复制代码
#_*_coding:utf-8_*_
import urllib2,urllib
import ssl
import  cookielib
import simplejson
import img
import re
from youjian import send

from station import station_names


stationDict={}
for i  in station_names.split('@')[1:]:
    stationList=i.split('|')
    stationDict[stationList[1]]=stationList[2]

c=cookielib.LWPCookieJar()
cookie=urllib2.HTTPCookieProcessor(c)
opener=urllib2.build_opener(cookie)
urllib2.install_opener(opener)
headers={
    'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:64.0) Gecko/20100101 Firefox/64.0',
    'Referer':'https://kyfw.12306.cn/otn/resources/login.html'
}
ssl._create_default_https_context=ssl._create_unverified_context





#v出发时间
train_date='2019-01-25'
#起始站
fromStation='深圳'
from_station=stationDict[fromStation]
#终点站
toStation='武汉'
to_station=stationDict[toStation]


#登陆操作
def login():
    req=urllib2.Request(
        'https://kyfw.12306.cn/passport/captcha/captcha-image?login_site=E&module=login&rand=sjrand'
    )
    req.headers
    imgCode=opener.open(req).read()
    with open('code.png','wb') as fn:
        fn.write(imgCode)
    req=urllib2.Request(
        'https://kyfw.12306.cn/passport/captcha/captcha-check'
    )
    req.headers
    #code=img.code()
    code=raw_input('请输入验证码位置:')
    date={
        'callback':'jQuery1910948054855148424_1546424454404',
        'answer':code,
        'rand':'sjrand',
        'login_site':'E',
        '_':'1546424454425'
    }
    date=urllib.urlencode(date)
    html=opener.open(req,date).read()
    req=urllib2.Request(
        'https://kyfw.12306.cn/passport/web/login'
    )
    req.headers

    data={
        'username':'账号',#12306账号密码
        'password':'密码',
        'appid':'otn',
     }
    data = urllib.urlencode(data)

    html = opener.open(req, data).read()
    result=simplejson.loads(html)
    if result['result_code']==0:
        print '登陆成功'

        #登陆成功后的第一次访问
        req = urllib2.Request(
            'https://kyfw.12306.cn/passport/web/auth/uamtk'
        )
        data = {
            'appid':'otn'
        }
        data = urllib.urlencode(data)
        req.headers = headers
        html = opener.open(req,data=data).read()
        result=simplejson.loads(html)
        tk=result['newapptk']
        # ?第二次访问
        req = urllib2.Request(
            'https://kyfw.12306.cn/otn/uamauthclient'
        )
        data = {
            'tk':tk
        }
        data = urllib.urlencode(data)
        req.headers = headers
        html = opener.open(req,data=data).read()



        #查询是否登录成功
        '''req = urllib2.Request(
            'https://kyfw.12306.cn/otn/index/initMy12306Api'
        )
        req.headers=headers
        html = opener.open(req).read()
        print html
        return True'''
        return  True
    print '登陆失败,正在重新登录...'





下载地址:
链接:https://pan.baidu.com/s/1tJ3x5_cor2irMStKrq225g
提取码:rlab
复制这段内容后打开百度网盘手机App,操作更方便哦

下面是部分效果图(做出来了,还是蛮开心的),


本人属于初学者,如果有问题,我看到后会及时回复 (不保证能解决,),





免费评分

参与人数 12吾爱币 +11 热心值 +12 收起 理由
a末凉 + 1 热心回复!
MENGHUILIN + 1 + 1 用心讨论,共获提升!
sunboy0628 + 1 + 1 谢谢@Thanks!
lixinmingo + 1 + 1 用心讨论,共获提升!
吾爱妹子涛 + 1 + 1 我很赞同!
若白 + 1 用心分享,共获提升!
wokl168 + 1 + 1 谢谢@Thanks!
luojp52pojie520 + 1 + 1 谢谢@Thanks!
苏紫方璇 + 3 + 1 用心讨论,共获提升!
UPC + 1 + 1 我很赞同!
join12357 + 1 已经处理,感谢您对吾爱破解论坛的支持!
hostclsecho + 1 + 1 我很赞同!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

推荐
麦迪就是帅 发表于 2019-1-8 08:10
不错不错!
推荐
cydib 发表于 2019-1-7 20:48
推荐
read5 发表于 2019-1-7 20:59
推荐
dcx800 发表于 2019-1-7 20:34
想要抢票的人 可一试啊
推荐
fllow 发表于 2019-1-7 20:38
感谢楼主无私分享,学习了!
沙发
 楼主| 呙翰林 发表于 2019-1-7 19:50 |楼主
网盘地址忘记发了 :
链接:https://pan.baidu.com/s/1tJ3x5_cor2irMStKrq225g
提取码:rlab
复制这段内容后打开百度网盘手机App,操作更方便哦
3#
閒雲XY 发表于 2019-1-7 20:01 来自手机
谢谢,刚好拿来测试
4#
 楼主| 呙翰林 发表于 2019-1-7 20:02 |楼主
閒雲XY 发表于 2019-1-7 20:01
谢谢,刚好拿来测试

不客气,第一次发帖有问题可以交流交流
5#
倾城之风 发表于 2019-1-7 20:09
这真的可以么?
6#
testicles 发表于 2019-1-7 20:13
不知道行不行,先下载下来看看效果如何~
7#
琉璃M茗 发表于 2019-1-7 20:14
感谢楼主无私的分享,学习了!
8#
ghttt 发表于 2019-1-7 20:21
真的都是大神啊,
9#
 楼主| 呙翰林 发表于 2019-1-7 20:23 |楼主
testicles 发表于 2019-1-7 20:13
不知道行不行,先下载下来看看效果如何~

行的,行的
10#
gpz88688 发表于 2019-1-7 20:23
这么神奇的吗?假如一直没票,是不是就抢不到了!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-16 19:49

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表