fix 下单失败问题 #288

pull/295/head
文贤平 2019-08-31 15:51:09 +08:00
parent 1d585f53ef
commit c5c9450ef5
8 changed files with 12 additions and 46 deletions

View File

@ -1,33 +0,0 @@
#### gui文档
- 初衷:
- 一开始是不打算做gui页面但是看到群里这么多小伙伴配置不了文件心里着急的很连夜赶工了一个初级版本大家轻喷。。。。
- 不过如果你喜欢小黑框框,没问题,一样的支持
- 使用帮助
- [server酱配置姿势](https://www.jianshu.com/p/8d10b5b9c4e3)
- windows支持64位使用
- macos打开姿势请不要直接打卡app有可能会造成闪退如果有同学知道是什么问题烦请提issues
- ![image](https://github.com/testerSunshine/12306/blob/master/uml/mac1.png)
- ![image](https://github.com/testerSunshine/12306/blob/master/uml/mac2.png)
- ps:
- 默认开始设置
- 默认开启自动打码,第一次登陆手动
- 默认设置下单接口2
- 默认开启cdn
- 说了这么多,给我们的小软件起个名字吧,叫易行吧。
- gui期待小伙伴的pr
- 版权声明
- 本着开源的目的,服务大家,中间没有任何的收集包括联系人信息,电脑信息,算了算了,反正就是都没有
- 请勿将本软件售卖和进行非法经营(违背12306官方意愿)
- 最终解释权为本人所有
- 软件终身免费,永不收费
- 后续计划
- 剥离所有yaml配置文件工作太忙了尽量在本周之前完成(已完成)
- cmd命令输出改到gui里面不然很多小伙伴乱码我也是很头大(已完成)
- 打包成独立运行文件(已完成)
- 自动识别验证码(所有群里小伙伴的意愿吧~~(未完成)
- ....
- 感谢群里和github上一直默默支持我和使用我软件的同学真的非常感谢
- 软件界面截图:
![image](https://github.com/testerSunshine/12306/blob/master/uml/登录.png)
![image](https://github.com/testerSunshine/12306/blob/master/uml/程序主界面.png)

View File

@ -1,6 +1,6 @@
### 12306 购票小助手 ### 12306 购票小助手
#### python版本 #### python版本
- [x] 2.7.10 - 2.7.15 - [ ] 2.7.10 - 2.7.15
- [x] 3.6 - 3.7.4 - [x] 3.6 - 3.7.4
- [ ] 2.7.9 - [ ] 2.7.9
@ -14,13 +14,12 @@
- 项目依赖包查看 [requirements.txt](requirements.txt) - 项目依赖包查看 [requirements.txt](requirements.txt)
- 安装方法-Windows: - 安装方法-Windows:
- 安装方法-Linux: - 安装方法-Linux:
- root用户(避免多python环境产生问题): `python2 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt` - root用户(避免多python环境产生问题): `pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt`
- 非root用户避免安装和运行时使用了不同环境: `sudo python2 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt` - 非root用户避免安装和运行时使用了不同环境: `pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt`
#### 项目使用说明 #### 项目使用说明
- 可以配置邮箱,可以配置可以不配置,配置邮箱的格式在[yaml](config/ticket_config.yaml)里面可以看到ex - 可以配置邮箱,可以配置可以不配置,配置邮箱的格式在[yaml](config/ticket_config.yaml)里面可以看到ex
- 可以配置server酱提醒推荐 [配置教程](https://www.jianshu.com/p/8d10b5b9c4e3) - 可以配置server酱提醒推荐 [配置教程](https://www.jianshu.com/p/8d10b5b9c4e3)
- 提交订单验证码哪里依赖打码兔,所以如果是订票遇到验证码的时候,没有打码兔是过不了的,不推荐手动,手动太慢
- 配置[yaml](config/ticket_config.yaml)文件的时候需注意空格和遵循yaml语法格式 - 配置[yaml](config/ticket_config.yaml)文件的时候需注意空格和遵循yaml语法格式
#### 项目开始 #### 项目开始
@ -44,7 +43,7 @@
#### 目录对应说明 #### 目录对应说明
- agency - cdn代理 - agency - cdn代理
- config - 项目配置 - config - 项目配置
- damatuCode - 打码兔接口 - damatuCode - 自动打码
- init - 项目主运行目录 - init - 项目主运行目录
- myException - 异常 - myException - 异常
- myUrllib request网络请求库 - myUrllib request网络请求库
@ -94,10 +93,6 @@
- 测试下单接口是否可用有两个下单接口随便用哪个都ok - 测试下单接口是否可用有两个下单接口随便用哪个都ok
- 如果下载验证码过期或者下载失败的问题应该是12306封ip的策略多重试几次12306现在封服务器(阿里云和腾讯云)ip比较严重尽量不要放在服务器里面 - 如果下载验证码过期或者下载失败的问题应该是12306封ip的策略多重试几次12306现在封服务器(阿里云和腾讯云)ip比较严重尽量不要放在服务器里面
- 目前12306对服务器ip比较敏感大家还是在自己家里挂着吧 - 目前12306对服务器ip比较敏感大家还是在自己家里挂着吧
- 如果想使用此项目的gui版本请加群获取链接 [gui文档](GuiHelp.md) 或者gui专用群499098551
```
mac gui and windows gui 下载链接https://pan.baidu.com/s/1SbVJWxiwP27yb8HUi1kzDQ 密码:41wp
```
- 自动更换ip软件目前已支持TPLINK和小米路由器只限家庭网络[点我跳转](https://github.com/testerSunshine/AutoRouterIP) - 自动更换ip软件目前已支持TPLINK和小米路由器只限家庭网络[点我跳转](https://github.com/testerSunshine/AutoRouterIP)
- 关于登录接口需要识别DEVICES_ID的情况可以使用本地打开12306在任意一接口里面抓取DEVICES_ID填于[login.py](init/login.py)文件中的141行 - 关于登录接口需要识别DEVICES_ID的情况可以使用本地打开12306在任意一接口里面抓取DEVICES_ID填于[login.py](init/login.py)文件中的141行
- 原来的 d`evicesId = eval(devicesIdRsp.split("(")[1].split(")")[0].replace("'", ""))["dfp"]` - 原来的 d`evicesId = eval(devicesIdRsp.split("(")[1].split(")")[0].replace("'", ""))["dfp"]`

View File

@ -152,3 +152,8 @@
- 2019.04.23更新 - 2019.04.23更新
- 更新本地识别 - 更新本地识别
- 2019.08.31更新
- 删除若快打码
- 修复不能下单问题
- 放弃支持python2.7,只支持3.6以上版本

View File

@ -1,12 +1,11 @@
# -*- coding=utf-8 -*- # -*- coding=utf-8 -*-
import copy import copy
import random
import time import time
from collections import OrderedDict from collections import OrderedDict
from time import sleep from time import sleep
from config.ticketConf import _get_yaml from config.ticketConf import _get_yaml
from inter.GetPassCodeNewOrderAndLogin import getPassCodeNewOrderAndLogin, getPassCodeNewOrderAndLogin1 from inter.GetPassCodeNewOrderAndLogin import getPassCodeNewOrderAndLogin1
from inter.GetRandCode import getRandCode from inter.GetRandCode import getRandCode
from inter.LoginAysnSuggest import loginAysnSuggest from inter.LoginAysnSuggest import loginAysnSuggest
from inter.LoginConf import loginConf from inter.LoginConf import loginConf
@ -137,7 +136,7 @@ class GoLogin:
devicesIdUrl = copy.deepcopy(self.session.urls["getDevicesId"]) devicesIdUrl = copy.deepcopy(self.session.urls["getDevicesId"])
devicesIdUrl["req_url"] = devicesIdUrl["req_url"].format(int(time.time() * 1000)) devicesIdUrl["req_url"] = devicesIdUrl["req_url"].format(int(time.time() * 1000))
devicesIdRsp = self.session.httpClint.send(devicesIdUrl) # devicesIdRsp = self.session.httpClint.send(devicesIdUrl)
# devicesId = eval(devicesIdRsp.split("(")[1].split(")")[0].replace("'", ""))["dfp"] # devicesId = eval(devicesIdRsp.split("(")[1].split(")")[0].replace("'", ""))["dfp"]
devicesId = "UysLb2cYwsVjyInSzZ0pGOmYplvokmhBjoGNjrinquaUD0id7gkifgF6FvM2TRCL7Df89GZL1lVV763tGhiPhxlNdlE7iQkk496KUGCFZyyWxE4d0XjyHYv9DlsXfKTlrd8RBUdYIYjmWBXWMN65ElDQiO_Rnrul" devicesId = "UysLb2cYwsVjyInSzZ0pGOmYplvokmhBjoGNjrinquaUD0id7gkifgF6FvM2TRCL7Df89GZL1lVV763tGhiPhxlNdlE7iQkk496KUGCFZyyWxE4d0XjyHYv9DlsXfKTlrd8RBUdYIYjmWBXWMN65ElDQiO_Rnrul"

View File

@ -94,7 +94,7 @@ class select:
is_proxy = ticket_info_config["is_proxy"] is_proxy = ticket_info_config["is_proxy"]
print(u"*" * 50) print(u"*" * 50)
print(u"检查当前python版本为{},目前版本只支持2.7.10-2.7.15".format(sys.version.split(" ")[0])) print(u"检查当前python版本为{},目前版本只支持3.6以上".format(sys.version.split(" ")[0]))
print(u"12306刷票小助手最后更新于2019.01.08请勿作为商业用途交流群号286271084(已满)" print(u"12306刷票小助手最后更新于2019.01.08请勿作为商业用途交流群号286271084(已满)"
u" 2群649992274(已满)\n" u" 2群649992274(已满)\n"
u" 3群632501142(已满)\n" u" 3群632501142(已满)\n"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 403 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 147 KiB