C#自动填写用户名、密码,自动提交登录网页(你懂的!)

这里写图片描述在学校上网是通多Dr.com网页的形式登录,
由于账号流量限制,一个账号很快就用完了,幸运的是我们手上有一个EXCEl表,里面的账号足够多。但是每次用的时候都要打开表查找一个可用的账号,不仅耗时,而且还容易出错,于是就想能不能自己写个程序能够自动读取这些账号并且自动提交?

具体步骤

一、开发工具

这里我们采用VS2010,通过C#编写了一个Form程序,在Form程序中打开需要用到webBrowser这个控件。
首先,我们新建一个Form程序,然后从工具箱中拖拽一个webBrowser控件到窗体上,如下图所示:
webBrowser
界面已经做好,接下来就要实现具体的功能了。

二、功能实现

要实现自动登录网页,首先我们需要找到页面上输入账号和密码的input标签,以及提交buttun。
这里我们可以打开登录界面,右键“查看源代码”或者通过“开发人员工具”查看页面的元素。(查找页面元素可以通过id或者name来查找)`

登录页面源代码分析

登录代码如下:
“DDDDD”是登录窗口中账号文本框的name
“upass”是密码文本框的name
“0MKKey”是登录Buttun的name

HtmlDocument doc = webBrowser1.Document;
HtmlElement btn = null;
foreach (HtmlElement em in doc.All) //轮循
{
string str = em.Name;
if ((str == “DDDDD”) || str == “upass” || str == “0MKKey”) //减少处理
{
switch (str)
{
case “DDDDD”:
em.SetAttribute(“value”, student[i].Sno);//账号,保存在序列化的student类中
break; //填表
case “upass”:
em.SetAttribute(“value”, student[i].Id);//密码,保存在序列化的student类中
break; //填表
case “0MKKey”:
btn = em;
break;
default: break;
}
try
{
btn.InvokeMember(“click”); //触发submit事件
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}

登录用户名和密码通过经过处理之后保存在txt文件中,格式为:密码,账号。
读取账号密码的txt文件的代码如下:
FileStream fs = new FileStream(“D:\write.txt”, FileMode.OpenOrCreate, FileAccess.ReadWrite);
StreamReader m_streamReader = new StreamReader(fs);
//用StreamReader类来读取文件
m_streamReader.BaseStream.Seek(0, SeekOrigin.Begin);
//从数据流中读取每一行,直到文件的最后一行
string strLine = m_streamReader.ReadLine();
while (strLine != null)
{
// 这里处理每一行
strLine = m_streamReader.ReadLine();
student.Add(fillStu(strLine));
}
m_streamReader.Close();

  • 2
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值