小弟在用c#写一个winform的小东西
里面用到了webbrowser..
在我打开一个网页首页的时候,出现用户名和密码登陆框
现问:我如何自动填充用户名和密码...
15 个解决方案
#1
1.读该网站的cookie(如记录有用户名和密码)
2.把上次登录该网站的用户名密码记录下来,下一次登录后,根据网站,自动读取填充
2.把上次登录该网站的用户名密码记录下来,下一次登录后,根据网站,自动读取填充
#2
一般来讲是用COOKIE吧.
但是既然你写的是WINFORM那也可以把用户名和密码自行保存的本地文件系统.然后下次运行的时候读取该文件后操作HTML来填充.
但是既然你写的是WINFORM那也可以把用户名和密码自行保存的本地文件系统.然后下次运行的时候读取该文件后操作HTML来填充.
#3
我也在研究这个。加我的QQ625906512
目前有的技术是webclient和httpRequest
目前有的技术是webclient和httpRequest
#4
上面的几位朋友,小弟问题的关键在于如何把用户和密码写到显示出来的框中,至于用户名和密码我是有的.是怎么写,哪位能给个简单的代码?
#5
晕倒
#6
用户名和密码有的话,干嘛不赋值给文本框
#7
如果是GET的话,直接传参数算啦。
POST我不知道。
POST我不知道。
#8
HtmlDocument redoc = youwebbrowser.Document;
if (redoc == null)
return false;
HtmlElement glodedit = redoc.GetElementById("gold");
//gold为某元素(文本框)的name或id
if (glodedit == null)
//找不到gold文本框
return false;
glodedit.SetAttribute("value", "youvalue!!");
//("PayAction.Paymem_orderDocPostA():找到文本框并设置数值:"0);
#9
虽然你很少分,但是我要赚啊。
记得给分我。
我已经测试过能用的。
通常登陆页面里的用户名、名密码文本框的元素是
<INPUT >对象。你可以打开页面的html源代码看看就知道文本框的name或id是什么了。
一般是user,username,pass,pswd....之类的。
记得给分我。
我已经测试过能用的。
通常登陆页面里的用户名、名密码文本框的元素是
<INPUT >对象。你可以打开页面的html源代码看看就知道文本框的name或id是什么了。
一般是user,username,pass,pswd....之类的。
#10
密码框能实现吗?
#11
都是字符串了,呵呵,朋友是实现还是做坏事呀~~~
#12
8楼的方法可以 呵呵 我也这么用的
在documentComplete事件处理器里写
在documentComplete事件处理器里写
HtmlElement name = webBrowser1.Document.GetElementById("ctl00$content$loginname");
if (name != null)
name.SetAttribute("value", User);
HtmlElement pass = webBrowser1.Document.GetElementById("ctl00$content$pwd");
if (pass != null)
pass.SetAttribute("value", Password);
HtmlElement login = webBrowser1.Document.GetElementById("ctl00_content_summit");
if (login != null)
login.InvokeMember("click");
#13
用XML序列化。自己查资料。我以前做过,现在忘了怎么写了。
#14
这些方法对我有点用啊……
#15
C#是后台代码,网页是浏览器解释执行,所以除非用C#生成 填好表单的HTML输出到前台,否则只能用JS
#1
1.读该网站的cookie(如记录有用户名和密码)
2.把上次登录该网站的用户名密码记录下来,下一次登录后,根据网站,自动读取填充
2.把上次登录该网站的用户名密码记录下来,下一次登录后,根据网站,自动读取填充
#2
一般来讲是用COOKIE吧.
但是既然你写的是WINFORM那也可以把用户名和密码自行保存的本地文件系统.然后下次运行的时候读取该文件后操作HTML来填充.
但是既然你写的是WINFORM那也可以把用户名和密码自行保存的本地文件系统.然后下次运行的时候读取该文件后操作HTML来填充.
#3
我也在研究这个。加我的QQ625906512
目前有的技术是webclient和httpRequest
目前有的技术是webclient和httpRequest
#4
上面的几位朋友,小弟问题的关键在于如何把用户和密码写到显示出来的框中,至于用户名和密码我是有的.是怎么写,哪位能给个简单的代码?
#5
晕倒
#6
用户名和密码有的话,干嘛不赋值给文本框
#7
如果是GET的话,直接传参数算啦。
POST我不知道。
POST我不知道。
#8
HtmlDocument redoc = youwebbrowser.Document;
if (redoc == null)
return false;
HtmlElement glodedit = redoc.GetElementById("gold");
//gold为某元素(文本框)的name或id
if (glodedit == null)
//找不到gold文本框
return false;
glodedit.SetAttribute("value", "youvalue!!");
//("PayAction.Paymem_orderDocPostA():找到文本框并设置数值:"0);
#9
虽然你很少分,但是我要赚啊。
记得给分我。
我已经测试过能用的。
通常登陆页面里的用户名、名密码文本框的元素是
<INPUT >对象。你可以打开页面的html源代码看看就知道文本框的name或id是什么了。
一般是user,username,pass,pswd....之类的。
记得给分我。
我已经测试过能用的。
通常登陆页面里的用户名、名密码文本框的元素是
<INPUT >对象。你可以打开页面的html源代码看看就知道文本框的name或id是什么了。
一般是user,username,pass,pswd....之类的。
#10
密码框能实现吗?
#11
都是字符串了,呵呵,朋友是实现还是做坏事呀~~~
#12
8楼的方法可以 呵呵 我也这么用的
在documentComplete事件处理器里写
在documentComplete事件处理器里写
HtmlElement name = webBrowser1.Document.GetElementById("ctl00$content$loginname");
if (name != null)
name.SetAttribute("value", User);
HtmlElement pass = webBrowser1.Document.GetElementById("ctl00$content$pwd");
if (pass != null)
pass.SetAttribute("value", Password);
HtmlElement login = webBrowser1.Document.GetElementById("ctl00_content_summit");
if (login != null)
login.InvokeMember("click");
#13
用XML序列化。自己查资料。我以前做过,现在忘了怎么写了。
#14
这些方法对我有点用啊……
#15
C#是后台代码,网页是浏览器解释执行,所以除非用C#生成 填好表单的HTML输出到前台,否则只能用JS