C# 模拟网页登录

FMNISME 2010-04-17 02:47:29
我想做一个网页自动登录的小程序,用来登录联通的无线网的,有什么办法可以将网页上的登录按钮及输入账户密码的文本框和C#上的控件关联起来吗?
大虾帮个忙,讲一下思路,以及要用到什么. (@.@)
...全文
3116 30 打赏 收藏 转发到动态 举报
写回复
用AI写文章
30 条回复
切换为时间正序
请发表友善的回复…
发表回复
whongwei 2010-11-26
  • 打赏
  • 举报
回复
恰好,我刚做了这个。呵呵。可以先用WebBrowser控件,导航到淘宝登陆页面,然后获得用户名输入框这个元素(WebBrowser.Document.GetElemenyByID())。然后模拟键盘输入用户名密码回车(Sysyem.Windows.Forms.SendKeys.Send())。详细请看我的blog:http://blog.csdn.net/whongwei/archive/2010/11/26/6037822.aspx
jeff1983 2010-11-20
  • 打赏
  • 举报
回复
我也遇到了做淘宝登录的问题 还请大家解决
zhoulihong_1986 2010-07-27
  • 打赏
  • 举报
回复
webbrowser
尘世闲人 2010-06-15
  • 打赏
  • 举报
回复
mark一下,回家后慢慢学习
kiruya0 2010-06-10
  • 打赏
  • 举报
回复
学习了
FMNISME 2010-04-20
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 whowhen21 的回复:]

看看这里,CSDN小秘书 ,用户登陆并操作CSDN的帖子.

CSDN 小秘书
[/Quote]
这个软件代码我下了 嘿嘿
myhope88 2010-04-20
  • 打赏
  • 举报
回复
不错,学习下
Pro_ah 2010-04-20
  • 打赏
  • 举报
回复
路过,思考中
wangfeizjk 2010-04-20
  • 打赏
  • 举报
回复
做个标记!
Code従業員 2010-04-20
  • 打赏
  • 举报
回复

群策群力,好!
柳晛 2010-04-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 zhoufoxcn 的回复:]
可以用C#操作WebBrowser控件。
[/Quote]
lz可以试试这个控件,很简单。
如果使用HttpRequest、HttpResponse需要抓包,还有很多细节需要注意,比较麻烦,但是不用打开网页,纯文本收发,速度快。
fuxiuhua 2010-04-20
  • 打赏
  • 举报
回复
帮顶下
hbbliyong 2010-04-20
  • 打赏
  • 举报
回复
点点滴滴
whowhen21 2010-04-19
  • 打赏
  • 举报
回复
看看这里,CSDN小秘书 ,用户登陆并操作CSDN的帖子.

CSDN 小秘书


[img=http://hi.csdn.net/attachment/201004/14/0_1271216443xRvY.gif]CSDN 小秘书[/img]
FMNISME 2010-04-19
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 tao2yue 的回复:]

下面是http登录淘宝网的代码,对你应该有用
public void login()
{
m_Name=textbox1.Text;//用户名
m_Password=textbox2.Text;//密码
url = "http://login.taobao.com/member/login.jhtml";
string indata = "TPL_username=" + Htm……
[/Quote]
额 这个我还不会呢 我现在想借用webbrowser先实现下功能
deknight 2010-04-19
  • 打赏
  • 举报
回复
或者

string UserName = "testname";
ASCIIEncoding encoding = new ASCIIEncoding();
string postData = "uname=" + UserName;//比如网页上输入框的名字为uname
postData += ("&password=" + Password + "&action=login&http_referer=");//密码输入框名字为password
byte[] data = encoding.GetBytes(postData);
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create("http://xxxxx");//登陆页地址
myRequest.Method = "POST";
myRequest.ContentType = "application/x-www-form-urlencoded";
myRequest.ContentLength = data.Length;
Stream newStream = myRequest.GetRequestStream();
newStream.Write(data, 0, data.Length);
newStream.Close();
HttpWebResponse myResponse = (HttpWebResponse)myRequest.GetResponse();
StreamReader reader = new StreamReader(myResponse.GetResponseStream(), Encoding.UTF8);
string content = reader.ReadToEnd();

然后判断content的值,看是否登陆成功,具体你可以自己再看下
deknight 2010-04-19
  • 打赏
  • 举报
回复
WatiN.Core.dll

下载WatiN 然后引用


WatiN.Core.IE ie = new WatiN.Core.IE();//会打开一个新的IE
ie.GoTo("xxxxx");//要打开的网页地址
ie.TextField(WatiN.Core.Find.ByName("XXX").Value = "YYY"; //在网页上找到某个名字为XXX的控件,如用户名输入框,让它的内容为YYY
ie.TextField(WatiN.Core.Find.ByName("XXX").Value = "YYY";//在网页上找到某个名字为XXX的控件,如用密码输入框,让它的内容为YYY
ie.Button(WatiN.Core.Find.ByName("XXX").Click();//模拟点击某个名字为XXX的按钮,如登陆按钮
ie.WaitForComplete();

xtm468925 2010-04-19
  • 打赏
  • 举报
回复
新手上路,学习为主
yilaozhuang 2010-04-18
  • 打赏
  • 举报
回复
路过,学习了
FOREVER1314157 2010-04-18
  • 打赏
  • 举报
回复
WebBrowser
加载更多回复(8)

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧