Archive for 05月, 2007
-
IT程序员
星期二, 05月 8th, 2007
不是IT人做事太 机械 , 还是要看个性, 但是 做IT的大都沉默寡言, 原因不外乎:
(1)以研究为主,与外界接触较少.
(2)爱做实事,不爱花言巧语之言辞.
IT人大都是电脑桌上的民工,虽然拿着高薪(两三年经验的人很多都上10万年薪),但是辛苦的工作在身体上付出了沉重的代价.
IT人大都单纯,直来直去是个性.不爱装扮,不爱言辞,常无规律的做事:今天搞不懂这个问题不睡觉.遇事直来直去,常常发饿,这点上讲,IT人是最可爱的.
IT人大都博才多学,很多IT人也是诗人,学者,IT人空闲时是很无聊的,没有女友,没有花天酒地的朋友,没有同龄人有的欢乐,有的只是代码相随.在这种情况下,IT人开始写诗,写书,写文章,博览群书.
IT人大都是无私的,从不吝啬教会别人技术抢自己饭碗.从不会多个心眼去防范别人.
IT人学习能力超强(超人),IT人不但要会编程,还要精通数学,电路,系统,企业管理流程…
IT人常常半夜从床上跳起来大笑:我知道怎么解决问题了,ps:IT人懂得怎么去解决问题确不懂怎么谈恋爱.结果是:遇到心仪的女子,IT人常常傻傻的分不清楚.
IT人要求都不高,一位妻子,一个孩子,一栋房子,一台笔记本子.悲剧的是:IT人是创造时代的先锋,却是时代潮流的弃儿.看看大街上最时尚的,哪个是IT人.此时此刻,IT人不再最热闹的街头巷尾,IT人正搔着头发盯着屏幕coding呢.
IT人热爱IT,IT界大事小事琐事好事坏事平常事所能料到之事都要观之而论.
叹一句,IT人的纯真,有谁能懂??????
其实安静的IT人看世界看的比谁都清楚. -
教你轻松破解验证码
星期五, 05月 4th, 2007
教你轻松破解验证码
今天好奇研究了一下百度的验证码,做了一个新的程序,做这个程序的目的完全是研究技术。
我不会去贴吧发广告,也请大家不要去发广告。
授人以鱼不如授人以渔,下面我简单介绍一下破解验证码的过程。
一、序
大家知道,破解验证码、图文识别都是技术开发的难题,人眼能轻易分别的字符,计算机却需要大量的计算,而且结果很难做到准确。就算是用C++来做,也是很费劲很难得到好的效果。不过在这里我们使用模拟精灵,可以很简单的完成图文识别,模拟精灵虽然大小不足1M、而且是绿色软件完全独立运行,却内置了大部份常用的类库,如模拟编程、WEB编程、windows编程、图像编程都可以轻松实现
二、下载验证码样本
打开c:\test文件夹,选“查看缩略图”,然后重复运行下面的LAScript脚本(每次更换验证码的网址),下载百度贴吧的所有验证码并存为样本,例如图片一,就改名为1.jpg
img = image.new();
–下载图像,没有后缀名要显示指定*.bmp格式
img:getURL(”/Article/UploadFiles/200508/20050831203413603.jpg”)
image.corp(img, 9 ,0 , 41 , 20 )
img:save(”c:\\test\\test.jpg”) –保存到硬盘
–折分图片,指定一行四列
img2,img3,img4,img5 = img:split(1,4);
img2:save(”c:\\test\\0001.jpg”)
img3:save(”c:\\test\\0002.jpg”)
img4:save(”c:\\test\\0003.jpg”)
img5:save(”c:\\test\\0004.jpg”)
image.del(img);
三、生成验证码样本数据库
运行下面的脚本,把所有的验证码样本保存到ApeML数据岛
codeKey ={};
–添加所有数字键
for i =0,9,1 do
codeKey[""..i] = 0; –这里我们用字符串连接的方法把数字转换为字符串
end;
–k参数为键,v参数表示值 一个典型的table迭代器回调函数
loadCodeKey = function(k,v)
local img = image.new();
img:load(”C:\\test\\”..k..”.jpg”)
codeKey[k]= string.encode( img:getBytes(”*.jpg”) , “”); –因为转换到字符串还是二进制,所以用base64进行编码
image.del(img);
end;
–遍历表codekey的所有元素,调用loadcodekey加载图片文件
table.foreach (codeKey, loadCodeKey);
–把所有图片保存到数据岛,
ape:saveTable(codeKey,”验证码样本”)
四、识别验证码
运行下面的脚本测试一下
–从数据区块读取base64编码的图片数据
codekey = ape:loadTable(”验证码样本”);
imgBinKey = {}; –这是一个图像数组,用来储存还原后的验证码样本的图片数据
–必须进行一个转换,因为codekey里面只是base64编码的普通字符串,而imgBinKey 将是真正的图片对象(二进制数据)
–还原到图片对象
toImage = function(k,v)
local img9 = image.new();
img9:setBytes( string.decode( v ,””) ,”*.jpg”);
imgBinKey[k] = img9;
end;
table.foreach(codekey,toImage);
–下载验证码图片
imgD = image.new();
if (imgD:getURL(”/Article/UploadFiles/200508/20050831203415539.jpg”) ~= true) [...] -
心情欺骗文字OR文字欺骗心情????
星期四, 05月 3rd, 2007
人生会有疲惫想放弃的时候,看不清路的尽头,看不到希望,前途一片渺茫。
未来伸出的双手,失去了相信的力量,如此艰难的旅途,已无法再像从前一样骄傲的走过。
这种惆怅的感觉,随着时间的推移,就越难以描绘,记忆里只剩下因为割舍而感到的疼。
双脚酸痛,四肢麻木,路迢迢,无法踏过眼前的荒山。
无情的秋风把金灿灿的秋叶在一夜之间刷拉一下就被吹没了,寒冬已至。
尽管自己仍在眷恋花园里的生活,可每当看到自己渐显疲态时,心情就悄悄变了样..
想要禁得住诱惑,还要看得清世事,希望能尽可能的保留住一些童真..
懂得了如何理清纷繁的人脉关系,又要去考虑如果去面对一系列艰巨的挑战..
常常理清了纷繁的社会关系,却丢失了最初的于生活的追求,跟着盲目追随名利物质的人群,拐走了自己的心..
就像天使和魔鬼,他们同样的可爱,尽管他们之间只有一线之隔,却形成了最悬殊的比例.零和无穷大.
美丽的大树都变了秃瓢,度过了一个无任何收获的秋,进入一个未知而寒冷的冬里游荡。
文字在欺骗我的心情,心情也在欺骗我的文字,在现实的面前,我不得不低头。