模拟浏览器访问一个网址,如何实现?
各位牛牛,大家好。
模拟浏览器访问一个网址,如何快速访问网页?
现在是用这个方法的:
webBrowser1.Navigate(url);
需要循环访问上万个网址,这个方法速度似乎很慢,而且有超时的情况,有没有更好的办法呢?
[解决办法]
使用 httpwebrequest 类去访问。以此作为关键字自己google。
[解决办法]
不用控件
自己模拟http协议进行get请求
[解决办法]
需要循环访问上万个网址,这个方法速度似乎很慢,而且有超时的情况,有没有更好的办法呢?多线程+http协议进行get请求。 记录错误的访问,最后重复访问失败url(中间访问会耽误其它的时间).
[解决办法]
模拟post提交注册 看这贴 #4楼 活生生的例子。
可以发送get,post请求,可获取验证码。
可以使用GetHtml(url)获取网页源代码字符串。
[解决办法]
httpwebrequest 完全可以模拟浏览器的请求~
[解决办法]
1.webBrowser1.Navigate(url);
2.HttpWebRequest hwr = WebRequest.Create(URL) AS HttpWebRequest
hwr......
hwr......
hwr......
hwr......
相关属性设置。
HttpWebResponse 最后响应结果。
[解决办法]
HttpWebRequest hwr = (HttpWebRequest)HttpWebRequest.Create(url);
模拟
或process.start启动IP
或webbrower浏览器http://topic.csdn.net/u/20100622/14/0cde0446-91b0-4496-abbd-cebc445a4ff5.html
[解决办法]
- C# code
string result=string.Empty; StringBuilder builder = new StringBuilder(); builder.Append("http://api.ctfeshop.com.cn/misc.ashx"); builder.Append("?"); builder.Append("action=gold"); builder.Append("&"); builder.Append("token="+strToken+""); HttpWebResponse rsp = null; HttpWebRequest req = null; req = (HttpWebRequest)WebRequest.Create(new Uri(builder.ToString())); req.ContentType = "application/x-www-form-urlencoded"; req.Accept = "*/*"; req.Timeout = 30000;//30秒连接不成功就中断 req.Method = "GET"; rsp = (HttpWebResponse)req.GetResponse();