当前位置: 首页 > 面试题库 >

从C#网站获取HTML代码

堵琨
2023-03-14
问题内容

如何从网站获取HTML代码,进行保存并通过LINQ表达式查找一些文本?

我正在使用以下代码来获取网页的来源:

public static String code(string Url)
{
    HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(Url);
    myRequest.Method = "GET";
    WebResponse myResponse = myRequest.GetResponse();
    StreamReader sr = new StreamReader(myResponse.GetResponseStream(), System.Text.Encoding.UTF8);
    string result = sr.ReadToEnd();
    sr.Close();
    myResponse.Close();

    return result;
 }

如何在网页源中的div中查找文本?


问题答案:

从网站获取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 (String.IsNullOrWhiteSpace(response.CharacterSet))
     readStream = new StreamReader(receiveStream);
  else
     readStream = new StreamReader(receiveStream, Encoding.GetEncoding(response.CharacterSet));

  string data = readStream.ReadToEnd();

  response.Close();
  readStream.Close();
}

这将为您提供从网站返回的 HTML 代码。但是通过 LINQ 查找文本并不是那么容易。也许使用正则表达式会更好,但不能与 HTML
代码一起很好地使用



 类似资料:
  • 我试图从URL中获取数据,但我需要的信息需要几秒钟才能加载,并且在加载之前只在HTML中显示为加载,所以当我使用此代码时,我无法提取我需要的数据。 我怎么能让网址加载一段时间,然后再把超文本标记语言去掉呢?

  • 尝试使用Jsoup而不是网站API从网站上练习和获取信息。我的代码没有错误,但文本字段没有更改。它只是给我一个空白。我如何从网站上获取信息?我正试图获取主要新闻,以便在我的网站上发布。 我的代码:

  • cmf_get_site_info() 功能 获取后台管理设置的网站信息,此类信息一般用于前台 参数 无 返回 array 网站信息

  • 本文向大家介绍C#获取网页源代码的方法,包括了C#获取网页源代码的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#获取网页源代码的方法。分享给大家供大家参考。具体如下: 希望本文所述对大家的C#程序设计有所帮助。

  • 问题内容: 我想抢先获取要在中加载的网页的HTML代码,使用正则表达式解析它,并仅显示所需的HTML代码,同时让该网页仍然认为它已加载了所有内容。 有什么方法可以通过或类似方法来做到这一点? 编辑:我尝试过此: 该接口永远不会被调用 问题答案: 不得不使用HttpClient。无需Cookie,只需解析html:

  • 问题内容: 下面的代码没有从网址中获取任何HTML 我知道URLConnection方法openConnection()和URL类方法openStream(),但我不想使用这些方法。我只想知道为什么我不使用Socket类获得任何输入,但是我却使用其他方法获得了输入。 问题答案: 您没有发送任何请求。HTTP是一个请求-响应协议:您需要发送一个请求,告知Web服务器要检索的URL,然后它将向您发送该