抢个火车票
马上就要 0202 年了,有不少小伙伴还没有买到火车票。昨天晚上和朋友聊天,发现他还没有买到火车票,适逢今天又是圣诞节,我决定试一试 Github 上很火的一个开源项目。官网提供的安装方法看起来对普通用户不太友好,于是我亲自安装了一遍,并将过程记录了下来,方便大家参考。
运行环境
环境 windows 10 企业版。(家庭版 专业版也可以)
python3 (下面有介绍,莫急)
所需软件
抢票助手
下载地址: https://github.com/testerSunshine/12306/archive/master.zip
下载完成后可以解压到你自己的桌面,记住解压的位置。
python3
Python3 的官方有提供下载方式,不过这里我们既然使用了 windows 10,不妨就利用自带的应用商店下载。
点击 win 商店应用图标,搜索 python 。选择第一个即可,安装完成后,系统会自动帮你添加环境变量,非常智能。
配置环境
检查安装结果
打开 cmd(点击 windows 图标右侧的放大镜),输入 where python3
出现以下结果则说明安装正确。
C:\Users\15591>where python3
C:\Users\15591\AppData\Local\Microsoft\WindowsApps\python3.exe
修改注册表
同样的方法,打开注册表。
找到路径
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem@LongPathsEnabled
修改数值为1,确认保存。
开始使用
还记得刚才压缩包解压的位置吗?打开命令行 cmd ,进入到该位置。
如果你和我一样,解压文件放到了桌面,那你可以这样输入
cd Desktop\12306-master
如果没有报错,通常就说明你的操作是正确的,可以继续下一步操作了。
安装依赖
还是那个 cmd,输入下面的内容
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
运行结果大概是这样的。
只要你没有看到 ERROR 字样,一般就没有什么问题。
筛选 cdn
这是官网提供的教程,还是 cmd,继续输入
python3 run.py c
运行结果
配置订票信息
用记事本打开 TickerConfig.py 文件(将鼠标放到该文件上,右键->打开方式->记事本)
配置规则有点复杂,需要按照自己的需求修改。
我的建议是修改
刷票模式
TICKET_TYPE = 1
乘车信息
STATION_DATES、STATION_TRAINS 、FROM_STATION 、TO_STATION 、SET_TYPE 、TICKET_PEOPLES
USER 、PWD
打码信息
AUTO_CODE_TYPE = 3
# 此处设置云打码服务器地址,如果有自建的服务器,可以自行更改
HOST = "101.132.36.202:8080"
REQ_URL = "/verify/base64/"
HTTP_TYPE = "http"
本地运行打码我还没有弄明白,之后可以了再更新。
cookie 获取
COOKIE_TYPE = 1
# 如果COOKIE_TYPE=1,则需配置chromeDriver路径,下载地址http://chromedriver.storage.googleapis.com/index.html
# chromedriver配置版本只要和chrome的大版本匹配就行
CHROME_PATH = "C:\chromedriver"
COOKIE_TYPE = 2 有点问题,所以暂时使用 COOKIE_TYPE = 1
但是为了使用 COOKIE_TYPE = 1,我们需要下载 chrome(谷歌浏览器)以及它的驱动管理程序。
去这里下载 chrome :https://www.google.cn/intl/zh-CN/chrome/
下载完成后自行安装。
去这里下载 驱动管理:http://chromedriver.storage.googleapis.com/
注意需要和 chrome 版本号保持一致。
下载完成后解压,将文件放置到 C 盘根目录。(也可以放置到其他位置,但要修改 CHROME_PATH)
我使用的是 79 版本 chrome,所以下载的是这个:
http://chromedriver.storage.googleapis.com/79.0.3945.36/chromedriver_win32.zip
开始抢票
cmd 输入
python3 run.py r
运行结果
订单状况
如果余票不足,可能需要等待较长时间才能成功,自己多多关注下。
邮件提醒功能也很简单,看配置说明自己添加吧。
常见问题
PATH 问题:
C:\Users\15591\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\LocalCache\local-packages\Python37\Scripts
这是我的 python Scripts 位置,为方便使用,可以将他添加到 PATH 里面。
可参考:https://www.onesrc.cn/p/environmental-variable-path.html
tensorflow_estimator:
ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: 'C:\\Users\\15591\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python37\\site-packages\\tensorflow_estimator\\python\\estimator\\canned\\linear_optimizer\\python\\utils\\__pycache__\\sharded_mutable_dense_hashtable.cpython-37.pyc'
windows 路径限长引起的,修改注册表即可,前面有介绍。
参考链接
https://github.com/testerSunshine/12306/issues/446
https://docs.python.org/3.7/using/windows.html
本文由 ukuq 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Dec 25, 2019 at 05:01 pm
小白完全按照您的步骤操作,安装依赖提示Could not find a version that satisfies the requirement tensorflow==1.14.0 (from -r requirements.txt (line 10)) (from versions: none)。不知道该怎么办了,烦请指点下,谢谢!
可能是python版本的问题。建议把所有的python全部卸载了,然后重新安装。注意版本要选择3.7。