GithubHelp home page GithubHelp logo

dog's Introduction

dog

12306抢票软件学习

2018-06-29 第一次提交0.1版本,实现了自动登陆功能,不过验证码识别率不高,后续将重点放在解决验证码识别率上,由于是第一次使用python,并不明白python的依赖库怎么上传,所以将依赖都写在lib.txt文件中

2018-11-06 第二次提交,整套还未完成

1。因为百度识图每天只有500次调用机会,我一个人的力量有限,希望能大家一起来,在百度云注册账号,里面有人工智能服务中图片识别服务,申请后会得到appkey之类的资料
   然后在ClassifyApi.py 和 OcrApi.py 的构造函数中替换掉我的账号资料,注意 这里面是有两个账号的,ocr 是图片识别文字  classify 是图片识别场景。

2。我看了 百度,阿里,腾讯,目前对外开放的免费图片识别,百度是最强大的,所以这里选择百度当作图片识别的基础,每次识别验证码验证成功后会把图片md5值保存自己的阿里云数据库,请大家不要恶意去破坏数据里的数据。
   另外很多人会说可以基于谷歌的 Tesseract ocr图片识别文字,这不是立即就可以使用的,像简单无干扰的是能识别,总之还需要使用jTessBoxEditor等工具去训练它的识别正确率,大致意思是如果它识别错误了。
   需要人工去纠正,它自己会保存本次的纠正,但是这只是最简单,如果碰到了干扰特别强的图片则需要先处理图片的干扰,比如去底噪,去干扰线,高亮等,这一切的目的是让Tesseract的识别正确率提高,这才是简单的图片识别文字。
   这可以运用到12306图片验证码上的中文提问,最难的是下面的图片回答,需要识别图片中的场景叫什么中文,纵观各大公司,目前只有百度提供这样的服务并且对外开放,这是我半年前关注的,后面有没有新出我不知道,所以我选择直接用百度接口。

3。这个程序不能作为优秀的抢票程序,众所周知抢票讲究的是正确,以及快速,从语言执行速度,以及宽带,机器,验证码识别速度,显然是达不到黄牛或一流公司所提供的抢票服务那种能力,图片识别率,则需要大量的数据来支撑,这不是我一个人能解决的。

4。但是本源码应该还是能为大家解答抢票程序是如何制作的,这才是目的。

5。 如果大家愿意为图片识别数据提供积累,则可以按照上面的方法去百度云申请账号,修改掉对应位置后
    解开App.py 中的注释
    # 用于采集数据的
    #collect = CollectData()
    #collect.go(config)
    并且给下面的代码添加注释,因为用不着下面的代码,另外
    config = { # 固定格式
    "username":"",
    "password":"",
    "http": None # 这个session对象需要全程用来访问请求,因为验证通过是与session绑定的,再每次提交验证失败后会重新创建session为了防止出现复杂验证码
    }
    在采集数据的时候 不需要填这个12306的账号密码,所以不必担心被添加到黑名单等意外问题
    在 Config.py 中修改localimgpath 参数的地址,它可以是你电脑的磁盘任何位置。

碰到的问题
    1。我在执行登陆,查票,选票后,再次验证是否登陆的时候 竟然是 false,这个有点不解,我并没有更换session对象,这一块需要再看一下。

dog's People

Contributors

js1688 avatar

Watchers

James Cloos avatar  avatar

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.