如何使用 c# 在 Chrome 中获取当前的 HTML 标签?

Sal*_*ari 1 c# google-chrome

我打开一个网页,Process.Start("Chrome.exe", "https://www.google.com/"); 然后我想将一个 chrome 标签 HTML 页面(谷歌 HTML 代码)保存到 C# 中的一个字符串中。我该怎么做?

我需要指定打开的 url HTML 代码并将其保存为字符串。因为该网页包含的内容每分钟都在变化。

Hos*_*kat 5

您可以使用以下代码使用selenium实现此目的

IWebDriver _driver;
_driver = new ChromeDriver();
_driver.Navigate().GoToUrl("http://www.google.co.uk");
string pageSource = _driver.PageSource ;
_driver.Close();
Run Code Online (Sandbox Code Playgroud)

您也可以使用以下方法接受 url 并返回 url 的 html

    string LoadHtmlFromUrl(string url)
    {
        try
        {
            string htmlCode;
            using (WebClient client = new WebClient())
            {
                htmlCode = client.DownloadString(url);
            }
            return htmlCode;
        }
        catch (Exception exception)
        {
            //Log Exception
            return null;
        }
    }
Run Code Online (Sandbox Code Playgroud)

第二种方法的好处是不需要启动另一个进程,也不需要依赖chrome