您的位置:首页 > 其它

自动投票系统【二】模拟登录提交

2011-04-14 15:37 211 查看
当然现在就要模拟的登录,跟目标主机的交互,就要进行欺骗。咳,先来baidu,google一下。百度自动投票。资料还不少,还有现成的软件。还有专门做这样的公司。真是 。算了不评论了。我们来学习技术。下面一步。也有前辈做过csdn的模拟登录http://download.csdn.net/down/2989440/kzbpp。大家可以下载去学习!当然也有很多的介绍C#POST数据提交的实现方式。自己搜一下N多。但也都是大同小异。很多的同学都是抄来抄去了。所以有很多的雷同。当然这样也是学习的方式,自己随便记录,但别忘记了原创作者。

废话就不多说了。直接说我的实现把。我是用C#开发,用了web Browser控件。再在程式中找到那些要填写的id给他们赋值,
if (e.Url.ToString().ToLower().IndexOf("vote.asp") > 0)   //登gn陆页面¡Ó
{

for (int i = 0; i < doc.All.Count; i++)
{
if (doc.All[i].TagName.ToUpper().Equals("INPUT"))
{
switch (doc.All[i].Name)
{
case "name":
doc.All[i].InnerText = getname();
break;
case "MAIL":
doc.All[i].InnerText = qqStr + "@qq.com";
break;
case "QQ":
doc.All[i].InnerText = qqStr;
break;
case "ValidCode":
doc.All[i].InnerText = this.textBox3.Text.Trim();
break;
case "Submitok":
ClickBtn = doc.All[i]; //提¦¢G交Da按o钮
break;
}
}

}


再模拟点击提交按钮。

webBrowser1.Document.All["Submitok"].InvokeMember("Click");

当然这里还有填写数据的自动生成,比如用户名,
/百E家a姓m
static string[] fname = { "白DO", "毕", "卞E", "蔡2", "曹Óa", "岑±A", "常Ó`", "车", "陈", "成¡L", "程g", "池A", "邓", "丁B", "范S", "方e", "樊O", "费", "冯", "符A", "傅A", "甘DI", "高Xa", "葛M¡Â", "龚", "古Dj", "关", "郭¢F", "韩", "何o", "贺", "洪x", "侯J", "胡J", "华", "黄", "霍N", "姬V", "简", "江?", "姜¡M", "蒋", "金¡Ò", "康Ód", "柯_", "孔O", "赖", "郎|", "乐", "雷p", "黎?", "李±o", "连", "廉PG", "梁Óc", "廖u", "林L", "凌a", "刘", "柳h", "龙", "卢", "鲁", "陆", "路Mo", "吕", "罗", "骆", "马", "梅Óo", "孟s", "莫o", "母DA", "穆p", "倪U", "宁r", "欧", "区", "潘i", "彭¦^", "蒲Z", "皮DO", "齐", "戚Ó-", "钱", "强", "秦Â3", "丘DC", "邱o", "饶", "任Do", "沈LH", "盛¡Ó", "施I", "石DU", "时", "史Dv", "司Dq徒", "苏", "孙", "谭", "汤", "唐e", "陶3", "田DD", "童g¢G", "涂, "王y", "危M", "韦", "卫", "魏Q", "温", "文a", "翁ÂI", "巫±A", "邬", "吴", "伍Di", "武Z", "席u", "夏L", "萧", "谢", "辛L¡Â", "邢L¡P", "徐", "许", "薛¡±", "严", "颜", "杨", "叶", "易o", "殷i", "尤¡Ñ", "于_", "余±E", "俞, "虞M¡P", "元¡M", "袁XK", "岳¡L", "云a", "曾¦?", "詹Ma", "张", "章1", "赵", "郑", "钟", "周P", "邹", "朱?", "褚u", "庄U", "卓Lo" };
//拿3来组织姓m名W的o数据u
static string[] sname = { "坚", "刚", "牛u", "力O", "山s", "钧", "柱W", "劲", "舟a", "春K", "峰p", "浩ÂE", "然gM", "石DU", "今£g", "任Do", "令DO", "仰Do", "仲Do", "企Do", "伸u", "布D?", "位i", "住i", "伯±B", "余±E", "佩LO", "佳LI", "侑LY", "依LI", "俊T", "杰N", "倩A", "值E", "伟", "健X¡P", "传", "仪", "优?", "珍A", "形±I", "心s", "情Ó!", "爱", "思a", "展i颜", "嘉A子l", "紫g£g凝R", "樱柠", "含±t玉DE", "若Y菡r", "潇潇", "冰B婕D", "诗雅R", "盈O盈O", "诗雨B", "玉DE涵[", "璧z涓t", "竹E渝¦u", "玉DE滢", "默q菡r", "馨E琳gY", "昊t天N", "好n豪¡L", "展i鹏", "笑Âo愚PM", "自U强", "炫¡Â明u", "雪¡P松Q", "思a源P?", "源P?渊", "思a淼c", "晓啸", "展i颜", "嘉A子l", "紫g£g凝R", "樱柠", "依LI娜R", "若Y涵[", "冰B梅Óo", "冰B婕D", "诗雅R", "乐晨Óa", "智¦?渊", "娅楠P¢G", "旖Y旎ÓY", "雅R芙U", "默q涵[", "馨E琳gY", "灵蔚?", "静茹Âo", "斯¦£g琦ga", "磊U蕾¢F", "梦娜R", "智¦?颖", "娴雅R", "博O雅R", "子l涵[", "璐i瑶", "娅姝g", "明u慧z", "羽D佳LI", "春K燕P", "昊t天N", "思a聪", "展i鹏", "笑Âo愚PM", "志±O强", "炫¡Â明u", "雪¡P松Q", "思a源P?", "智¦?渊", "思a淼c", "晓啸", "天N宇t", "浩ÂE然gM", "文a轩", "鹭洋v", "振?家a", "乐驹", "晓博O", "文a博O", "昊t焱]", "立Ds果G", "金¡Ò鑫E", "锦程g", "嘉A熙3", "鹏飞", "子l默q", "思a远", "浩ÂE轩", "语堂Xo", "聪健X¡P" };

static string getname()
{
Random r = new Random();
int f = r.Next(157);
int s = r.Next(133);
return fname[f] + sname[s];
}


另外自动生成QQ号,QQ邮箱。这里就不多说了,比较简单!

那接着就到复杂的地方了验证码的识别。这一不确实很难,幸亏目标站点的验证码比较的简单。也还可以实现。请继续支持,下次分享。

本文参考:
http://www.docin.com/p1-179876212.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: