09

昨天正做着Discuz验证码的在线破解,测试到一半突然发现全错了,非常沮丧之际猛然发现是因为Discuz的验证码改成中文的了,不知道是不是我最近更新验证码破解的文章的缘故,如果是的话那也太荣幸了@@
`
不过其实我觉得中文的验证码难度其实并没有提高太多,因为都是方块字了,旋转定位要容易得多了。我之前最头痛的还是英文字体很多,宽瘦不一,很多字母还是圆形的很难转正了比较。转不正的话很多判断都没法做,或者说做起来比较困难,而且英文比如CG6等等其实很像,旋转的不太好就会造成误判很多,中文的话当然也有这种情况,但是相对来说感觉好搞一点。
`
说到底,你不扭曲的话验证码效果不会很好的,也就是再多花点时间破解一下中文验证码而已。

,

07

承接上文,上文写道去噪,本文应该接着从切块开始写,然后到比对的。然则上文写完之后开始收集训练样本,把样本用去噪算法一做,惨不忍睹;再加上上文之后有很多人留言提了不少意见,所以有了新的方向。
`
首先骨头兄提议说可以用tesseract来做OCR,这个确实是一个很好的建议。很多验证码其实很简单,根本用不到高级的东东,直接用tesseract就可以摆平。
`
然而经过实验,效果不尽如人意,如图:ocr-result
`
还有关于选取多角度多采样的建议,后来发现会导致样本容量太大,性能受到影响,所以也作出了一定的调整,目前来说验证码识别的部分算是写完了,绝对识别率在10%左右,如果可接受其他候选结果的话,识别率在50%左右,不能识别的主要因素是去噪效果不理想没有成功切块
`
最后还有关于Discuz验证码使用反色阴影的建议,虽然可能可以大幅提高去噪成功率,但是因为不够通用被我舍弃了。
`
我不喜欢直接写结论,我会把我的探索过程和绕圈子过程一起写出来,因为这样看了才有收获,否则也就是”又一个注册码破解器”这种东东而已,能写出来多少就写多少吧。
继续阅读 »

, , ,

02

前文有做过OpenVZ和Xen主机的性能比较,个人因为OpenVZ的性能较好而更中意OpenVZ主机。
`
OpenVZ的最大问题在于内存,它把虚拟内存也计入你消耗的内存,无形中吃掉了大量的内存,OpenVZ有大量的公共开销免去了内存消耗,但两相比较下来很可能会比Xen占用更多内存。
`
这种多占内存的现象在多线程应用时尤为明显,这是因为一个线程默认就要占用8M的Stack,比如php-cgi5开5个线程的话,啥都没干就要吃掉40M内存。
`
这个省内存绝招就是修改Stack大小:
继续阅读 »

, , ,

28

python就是这么一个语言:你越是使用,越能体会它的方便与强大。
`
在写python爬虫脚本用法总结的时候曾经提到过验证码的处理问题,Discuz验证码当时就说了google的验证码要凉拌,但是某些验证码,尽管它看起来可能很复杂,
但是却没有想象的那么难破,我就有破解成功的例子。不过那个例子并不是Discuz,当时我还觉得Discuz的验证码挺花哨的,如图:
`
前一阵simplecd的论坛老有机器人注册进来灌水一通,不甚其扰,但是也说明了discuz的验证码可能被别人吃透了,所以才会机器人猖獗,我改了验证码方式以后果然机器人就绝迹了。
`
机器人泛滥就说明这个注册机制有漏洞,那么Discuz的验证码肯定是有漏洞的,于是本人就试着也破解一下好了。
继续阅读 »

, , ,

24

VeryCD那个铜光盘才能进候补区的规定很烦人,必须得灌水才能升级,可是又懒得灌,于是写了一个灌水脚本,有人问我要,就干脆发出来共享一下吧。
`
使用方法:
1.把username和passwd改成相应的东东
2.用python解释器执行脚本,自动在首页的所有资源后面跟帖支持楼主
`
想要了解灌水机原理的话:
1.学会python基本原理
2.学会正则表达式,网络脚本必备(也可以学beautifulsoup,写的代码更直观易懂,不过正则通用性强,总要学的)
3.学会html基本格式,理解获取网页的GET/POST机制
4.然后再看代码吧,这个脚本因为很简单,所以注释了一下
继续阅读 »

, ,

18

Python有多慢?

最近做一些和性能相关的东东,因为被python惯坏了,实在不想用编写和调试复杂十倍而且很遗憾我已经好久不用快忘光的C/C++,但是又怕python会造成大的瓶颈,所以对python的性能很好奇。
`
随处搜了一下,这篇关于 Ruby/Java/Python/PHP性能比较: http://www.blogjava.net/shinewang/archive/2009/01/20/251600.html
它得出结论PHP : JRuby : Python : Java 大约是 1:2:4:100,这个结论令我有点不敢相信,我一直以为python是效率仅次于java的厉害家伙呢。(嘛,虽然这个结果好像python确实仅次于java@@)这让人有点不太放心用python写代码了,写出乌龟来也太过糟糕。
继续阅读 »

, ,

16

-1.本文很长

一不小心就写了老长,本文主要是关于MySQL,SQLite和PostgreSQL在我的特殊应用中使用想法和总结。MySQL部分是上个月的实践,PostgreSQL和非数据库解决方案是我这几天的心得。
`
本文努力地比较了MySQL内存数据库和SQLite数据库在特定应用下的优劣,MySQL一般数据库?它太笨了所以被我放弃了。随后兴头所至干脆加入了PostgreSQL和非数据库解决方案。
`
本文的结论是非数据库解决方案>PostgreSQL>SQLite~MySQL内存方案,P在个方面都要要好于S,但差距不大,而S和M则互有优劣,在此应用中我更偏向于S。
`
继续阅读 »

,

12
SimpleCD Desktop 界面

SimpleCD Desktop 界面

完美地让SimpleCD在Windows上运行,html打包下载可以取消了(又过时又不方便)。

继续阅读 »

, ,

12

今天一看发觉全部都是广告,太ft了

删到我手软,本来想更新些东西的,算了,只能晚上再说了

wordpress还是用不顺手啊,都不知道该怎么设置广告过滤,改天用django写一个算了,最近总算对photoshop上手了,感觉即便不能期望太高,也应该不会做出太过丑陋的东东出来,只是不知道合适才有时间@@

26
十二

学用python也有3个多月了,用得最多的还是各类爬虫脚本:写过抓代理本机验证的脚本,写过在discuz论坛中自动登录自动发贴的脚本,写过自动收邮件的脚本,写过简单的验证码识别的脚本,本来想写google music的抓取脚本的,结果有了强大的gmbox,也就不用写了。
-
这些脚本有一个共性,都是和web相关的,总要用到获取链接的一些方法,再加上simplecd这个半爬虫半网站的项目,累积不少爬虫抓站的经验,在此总结一下,那么以后做东西也就不用重复劳动了。
继续阅读 »

,