百度贴吧发贴机探索(一)

工作也签了,没啥事做。。。

突然想研究一下网站自动登陆的问题,决定做点有挑战性的事情搞个有验证码的试试。呵呵~~

找啊找。。。远在天边近在眼前,对!就是百度贴吧。

经过一晚上的分析实验,终于有点眉目了,赶紧写下来。

大概原理是这样的:

一、使用HttpWebRequest 和HttpWebResponse 。从Stream中获得HTML代码

二、在窗体中加载验证码图片(暂时还只能手工输入,呵呵~能力有限~)。这里主要通过正则表达式查找HTML中的验证码地址。

三、POST数据。这里要注意POST中文的话要注意编码,不然会出现乱码

 string postcontent = HttpUtility.UrlEncode(textBox3.Text, Encoding.GetEncoding("gb2312")).ToUpper();

然后分析其他相关的字段,一起Write到Stream中

问题:

1.不稳定,有的时候可以成功,有的时候不行。怀疑是发贴时间有限制,或者其他限制,有待研究。。。

2.关于POST后的返回状态没有检测,可能会获得不能发贴的错误原因。主要分析返回的HTML中的错误描述。

3.贴吧的验证码是直接保存在Hidden标签中的,如果要加上Cookies验证呢?恩,有待考虑。。。

相关参数:

<input type=hidden name=ct value=385875968>
<input type=hidden name=tn value=baiduSubmitPost>
<input type=hidden name=word value="1">
<input type=hidden name=lm value="7270" >
<input type=hidden name=z value="153473192" >
<input type=hidden name=sc value="1">
<input type=hidden name=cm value="0">
<input type=hidden name=rn value="634431546">
<input type=hidden name=bs value="31337524417A9067F9748F2DAD5A7C29F1DF4EB82EEC455CD4B7FD2D83EF7EB5FB5558A5B5CA7676B592F1419758C3E731A08D58C0226EB9013C1575CF8A">
//验证码直接保存在HTML中了,呵呵。。

 

 

OH~~My God 睡觉了~~~~明天继续

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值