无法从 url 获取 html 源
Posted
技术标签:
【中文标题】无法从 url 获取 html 源【英文标题】:unable to get html source from url 【发布时间】:2014-12-19 04:11:12 【问题描述】:我已经阅读了我的问题的大部分答案。但我从这个网址一无所获。好吧,实际上我收到了" "
这是网址:
http://www.casadellibro.com/busqueda-generica?busqueda=9783126759120&nivel=5&auto=0&maxresultados=-1
我的代码:
System.Net.WebRequest req = System.Net.WebRequest.Create(url);
System.Net.WebResponse resp = req.GetResponse();
System.IO.StreamReader sr = new System.IO.StreamReader(resp.GetResponseStream());
string response = sr.ReadToEnd();
有什么想法吗?
提前谢谢你。
【问题讨论】:
查看How to Ask 了解如何组织您的问题并帮助我们回答您;) 【参考方案1】:从网站获取 html 代码。你可以使用这样的代码。
string urlAddress = "http://google.com";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(urlAddress);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
if (response.StatusCode == HttpStatusCode.OK)
Stream receiveStream = response.GetResponseStream();
StreamReader readStream = null;
if (response.CharacterSet == null)
readStream = new StreamReader(receiveStream);
else
readStream = new StreamReader(receiveStream, Encoding.GetEncoding(response.CharacterSet));
string data = readStream.ReadToEnd();
response.Close();
readStream.Close();
这将为您提供网站返回的 HTML 代码。但是通过 LINQ 查找文本并不是那么容易。也许使用正则表达式会更好,但它不能很好地与 HTML 代码配合使用
在此处阅读所有反应:Get HTML code from website in C#
【讨论】:
感谢您的快速回复。但我得到了同样的结果。数据 = " " 请求和响应都通过了好吗?调试的时候有没有报错? 是的,他们通过了。并且没有错误。 StatusCode = OK,StatusDescription = OK,ContentLength = 4以上是关于无法从 url 获取 html 源的主要内容,如果未能解决你的问题,请参考以下文章
C# 从 Windows Media Player 获取当前歌曲源 url