Giter Site home page Giter Site logo

easytrain's Issues

checkOrderInfo: 第 1 张车票: 乘客不是学生,请从常用联系人中选择学生购买此车票。

发现一个问题呀!
在购买学生票的时候会出现这个错误:

checkOrderInfo: 第 1 张车票: 乘客不是学生,请从常用联系人中选择学生购买此车票。

经过对各个请求的分析,发现问题出在 校验订单信息 这个部分。
对应的请求是:https://kyfw.12306.cn/otn/confirmPassenger/checkOrderInfo
这个请求有一个参数是:oldPassengerStr,相应的格式化这个参数的方法在:utils/TrainUtils.py 中的 oldPassengerStr(passengerDetails) 中,其中下划线前面的数字是 1,而实际请求中的参数值为 3

解决方法:
将下划线前面的 1 改为 3

def oldPassengerStr(passengerDetails):
    # oldPassengerStr-->张三(passenger_name),1(证件类型:passenger_id_type_code),320xxxxxx(passenger_id_no),1_
    return '%s,%s,%s,1_' % (passengerDetails.passengerName,
                            passengerDetails.passengerIdTypeCode,
                            passengerDetails.passengerIdNo)

改为 3 之后就可以正常下单了,具体原理还不太清楚,不知道和购票人类别有没有关系。

# 购票人类别(成人票:1,儿童票:2,学生票:3,残军票:4)
PASSENGER_TYPE_CODE = '3'

提示这种错误

�[32m正在登录...�[39m
Traceback (most recent call last):
File ".\easytrain.py", line 48, in
main()
File ".\easytrain.py", line 16, in main
result, msg = login.login(USER_NAME, USER_PWD)
File "F:\EasyTrain\train\login\Login.py", line 64, in login
result, msg = self._login(userName, userPwd, type=(count % 2))
File "F:\EasyTrain\train\login\Login.py", line 17, in wrapper
reslut, msg = func(*args, **kw)
File "F:\EasyTrain\train\login\Login.py", line 75, in _login
return self._loginNormal(userName, userPwd)
File "F:\EasyTrain\train\login\Login.py", line 79, in _loginNormal
self._uamtk()
File "F:\EasyTrain\train\login\Login.py", line 47, in _uamtk
return isSuccess(jsonRet),
File "F:\EasyTrain\train\login\Login.py", line 45, in isSuccess
return response['result_code'] == 0 if 'result_code' in response else False
TypeError: argument of type 'NoneType' is not iterable

有项目想找你一起合作

这边有门票类的项目想找你合作,如果有意向的话,你有时间可以看一下,当然你也可以将你的即时通讯联系方式,发到这个邮箱:[email protected],麻烦发过来的时候备注为:票务项目合作,谢谢!

经常登录不成功,只有偶尔成功一次(验证码已验证正确)

Hi,

今天在试用这个脚本,想一边抢票一边看看代码学习。

但目前发现一个问题,在登录过程中执行到 以下这行代码就重定向(status code 302)https://github.com/Why8n/EasyTrain/blob/master/train/login/Login.py#L99 ,
只有偶尔成功登录得上。

今天我花了半天时间去研究也没修复这个问题,@Why8n 能否帮忙修复下这个问题啊? 很喜欢你写的这个脚本,代码简洁。

谢谢

图形验证码过程报错

正在获取验证码..

        -----------------
        | 0 | 1 | 2 | 3 |
        -----------------
        | 4 | 5 | 6 | 7 |
        ----------------- 

输入验证码索引(见上图,以','分割): 2,7
captchaResult: 180,40,250,110
captchaCheck: {'result_message': '验证码校验成功', 'result_code': '4'}
核验方式不正确!
核验方式不正确!
正在获取验证码..
Traceback (most recent call last):
File "/Users/fengheping/Desktop/mySpace/work/pros/EasyTrain/easytrain.py", line 48, in
main()
File "/Users/fengheping/Desktop/mySpace/work/pros/EasyTrain/easytrain.py", line 16, in main
result, msg = login.login(USER_NAME, USER_PWD)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/fengheping/Desktop/mySpace/work/pros/EasyTrain/train/login/Login.py", line 64, in login
result, msg = self._login(userName, userPwd, type=(count % 2))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/fengheping/Desktop/mySpace/work/pros/EasyTrain/train/login/Login.py", line 17, in wrapper
reslut, msg = func(*args, **kw)
^^^^^^^^^^^^^^^^^
File "/Users/fengheping/Desktop/mySpace/work/pros/EasyTrain/train/login/Login.py", line 73, in _login
return self._loginAsyncSuggest(userName, userPwd)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/fengheping/Desktop/mySpace/work/pros/EasyTrain/train/login/Login.py", line 106, in _loginAsyncSuggest
results, verify = Captcha().verifyCaptchaByHand(type=TYPE_LOGIN_OTHER_WAY)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/fengheping/Desktop/mySpace/work/pros/EasyTrain/train/login/Capthca.py", line 69, in verifyCaptchaByHand
img = Image.open(BytesIO(self.getCaptcha(type)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/PIL/Image.py", line 3280, in open
raise UnidentifiedImageError(msg)
PIL.UnidentifiedImageError: cannot identify image file <_io.BytesIO object at 0x10d76bfb0>

get参数问题

Query.py的函数query中,get请求的参数params没发送成功?
一直返回的是网络问题的页面

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.