V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dotpig
V2EX  ›  问与答

关于简单验证码的识别

  •  
  •   dotpig · 2016 年 7 月 24 日 · 4235 次点击
    这是一个创建于 3480 天前的主题,其中的信息可能已经有所发展或是发生改变。
    受爱国青年的影响,最近喜欢读人民日报。人民日报网站提供 pdf 下载,每一页一个 pdf 文件。本来很好的一件事,我可以弄个脚本每天自动下载、合并一张报纸的十几个 pdf ,回家后就可以看了(本地报纸我就是这么弄的)。但是,人民日报选择给人民制造一点麻烦,就是下载每一页报纸都要输入验证码。验证码很简单,就是 4 个等宽数字,如下图:



    由于我不会编程,咨询一下有没有简单方便的识别方法可用,比如 python 的,最终目的就是在脚本里方便的将验证码识别并提交,然后下载对应的文件( curl )。
    21 条回复    2016-07-25 10:44:31 +08:00
    scnace
        1
    scnace  
       2016 年 7 月 24 日 via Android
    尝试一下 ocr
    int64ago
        2
    int64ago  
       2016 年 7 月 24 日 via Android
    不需要 OCR ,这种是最简单的,过滤背景-分割-对比
    jswh
        3
    jswh  
       2016 年 7 月 24 日
    @int64ago 还是 OCR 方便,自己写其实最终也是 OCR 那一套。

    https://github.com/tesseract-ocr/tesseract
    niboy
        4
    niboy  
       2016 年 7 月 24 日
    PIL
    dotpig
        5
    dotpig  
    OP
       2016 年 7 月 24 日
    发现有 PyTesser 可用。悲剧的是,我发现人民日版数字版其实要钱的,下了三页以后就要求输入订阅帐号了。那我只能上网学习人民日报了。
    Garantion
        6
    Garantion  
       2016 年 7 月 24 日
    最简单的 KNN 即可 Github 上一搜一大把
    yangxiongwei
        7
    yangxiongwei  
       2016 年 7 月 24 日
    tscat
        8
    tscat  
       2016 年 7 月 24 日
    二值化之后 ocr 就行
    klesh
        9
    klesh  
       2016 年 7 月 24 日
    会 python 不会编程?
    bazingaterry
        10
    bazingaterry  
       2016 年 7 月 24 日 via iPhone
    这个和我校的教务系统很像,我处理的时候直接 OCR 就有 70% 成功率。
    popok
        11
    popok  
       2016 年 7 月 24 日
    次世代验证码识别,可以找下破解版。
    SDK 例程: http://antiyzm.sinaapp.com/
    就你这个验证码的话,识别率可以到 100%
    popok
        12
    popok  
       2016 年 7 月 24 日

    新建工程,然后每个数字都做一个字模,然后生成 cds 文件,用 python 调用一个 dll ,加载这个字模文件,就能识别了
    coolzjy
        13
    coolzjy  
       2016 年 7 月 24 日   ❤️ 1
    这种类型的验证码,曾经用 JavaScript 搞了一个在浏览器环境中识别的。
    http://coolzjy.github.io/captcha-reader/
    coolzjy
        14
    coolzjy  
       2016 年 7 月 24 日
    @dotpig 下载三页确定不是 cookie 控制的?
    fusae
        16
    fusae  
       2016 年 7 月 24 日
    DaCong
        17
    DaCong  
       2016 年 7 月 24 日
    我记得我曾经搞过一个类似的,好像是教务系统的。
    说一下大致思路:
    1. 图片降噪
    2. OCR 识别
    bumz
        18
    bumz  
       2016 年 7 月 24 日
    @Garantion KNN 指什么? k-Nearest Neighbors?
    Garantion
        19
    Garantion  
       2016 年 7 月 24 日
    @bumz 是的,不好意思,写缩写写错了,应该是 k-NN 。
    panda0
        20
    panda0  
       2016 年 7 月 25 日
    tesseract 我刚试了下,好像毫无难度。
    dotpig
        21
    dotpig  
    OP
       2016 年 7 月 25 日
    各位,看到大家的回复,很感谢。我在 5 楼说了,找到 PyTesser 了(基于 tesseract )。但是现在找到也没用,因为人民日报电子版需要订阅才能看。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5203 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 02:30 · PVG 10:30 · LAX 18:30 · JFK 21:30
    ♥ Do have faith in what you're doing.