我必须得到一个特定页面的html代码。url格式为:
http://www.externalwebsite.com/dir/page.html?p1=parameter1value&p2=parametervalue2
当我得到这个页面的html代码时,有一个隐藏的值列表,其中填充了之前在查询字符串中编写的p1和p2参数。然后有一个POST操作,它重定向到"/dir/page.html":在这个页面中有我需要的html内容。
有没有办法获取"dir/page.html“的html内容?
任何帮助都是非常感谢的!
谢谢
我已经使用streamreader实现了GetResponseStream,但是我得到了下面这段代码:
<form name="myForm" method="post" action="/dir/page.html" accept-charset="ISO-8859-1">
<input type="hidden" name="p1" value="parameter1">
<input type="hidden" name="p2" value="parameter2">
</form>发布于 2011-10-25 18:09:51
你想要GetResponse。就像..。
HttpWebRequest request =
WebRequest.Create("http://www.externalwebsite.com/dir/page.html");
HttpWebResponse response = request.GetResponse();
StreamReader reader = New StreamReader(response.GetResponseStream());
string sHTML = reader.ReadToEnd();发布于 2011-10-25 18:24:36
您已经发出了一个HTTP GET请求,但是在提交表单时,您必须向服务器发出一个包含两个参数p1和p2的HTTP PUT请求。
您可以使用WebRequestClass或WebClient类和UploadValues方法通过HTTP POST发送参数:
WebClient wc = new WebClient();
byte[] result = wc.UploadValues("http://www.externalwebsite.com/dir/page.html",
"POST",
new NameValueCollection
{
{ "p1", parameter1 },
{ "p2", parameter2 }
});https://stackoverflow.com/questions/7887659
复制相似问题