跳過到頁腳內容
.NET幫助

Selenium ChromeDriver C#(開發者的工作原理)

在本教程中,我們將深入研究 Selenium ChromeDriver 和 Selenium WebDriver 的強大組合,以自動化 Google Chrome 瀏覽器中的任務以及 IronPDF 將網頁內容轉換為 PDF。 本指南專為初學者量身打造,旨在為這兩種技術提供堅實的基礎。

Selenium ChromeDriver 是網頁自動化的關鍵組件,特別適用於 Google Chrome 用戶。 這是一個獨立服務器,可以自動控制 Chrome 版本會話,是測試和自動化網頁瀏覽器(無論是否啟用無頭模式)的必備工具。 有了 Selenium ChromeDriver,任務如打開新標籤、導航到 URL 和與網頁元素的交互變得可編程和可重複。

IronPDF 提供將在線頁面轉換為 PDF 文檔的能力。 無論您是想捕獲用於文件、報告或存檔目的的網頁狀態,IronPDF 都能提供無縫解決方案。 它可以輕鬆與 Selenium 整合,允許您將自動化結果轉換為固定格式。

設置 Selenium ChromeDriver

Selenium ChromeDriver 是 C# 中網頁自動化的基本工具。 本節將引導您完成安裝過程和初始配置,為自動化的 Chrome 瀏覽器交互打下基礎。

安裝步驟

NuGet 包:通過 Visual Studio 中的 NuGet 安裝 Selenium WebDriver 和 ChromeDriver。 搜索 'Selenium.WebDriver' 和 'Selenium.WebDriver.ChromeDriver' 並將它們添加到您的項目中。

Selenium ChromeDriver C#(對開發人員的工作原理):圖 1 - Selenium 導入 WebDriver

匹配的 Chrome 版本:確保您擁有正確且最新的 ChromeDriver 版本,可以通過 NuGet 自動下載與您的 Chrome 瀏覽器匹配的版本。

基本配置

系統路徑:安裝後,ChromeDriver.exe 位於您的專案的 bin 資料夾中。 您可能需要將此單獨可執行文件添加到系統的路徑中。

默認設置:在 C# 中,實例化一個新的 ChromeDriver 對象以啟用自動化。 這將以默認配置啟動一個新的 Chrome 瀏覽器實例。 此實例化使用 ChromeDriver 的默認配置版本,足以滿足大多數基本的自動化任務。

示例:啟動 Chrome

using OpenQA.Selenium.Chrome;

public class ChromeAutomation
{
    public void StartChrome()
    {
        // Initialize ChromeDriver
        var driver = new ChromeDriver();

        // Navigate to the specified URL
        driver.Navigate().GoToUrl("https://www.ironpdf.com");

        // Additional actions can be implemented here

        // Close the browser after tasks are complete
        driver.Quit();
    }
}
using OpenQA.Selenium.Chrome;

public class ChromeAutomation
{
    public void StartChrome()
    {
        // Initialize ChromeDriver
        var driver = new ChromeDriver();

        // Navigate to the specified URL
        driver.Navigate().GoToUrl("https://www.ironpdf.com");

        // Additional actions can be implemented here

        // Close the browser after tasks are complete
        driver.Quit();
    }
}
Imports OpenQA.Selenium.Chrome

Public Class ChromeAutomation
	Public Sub StartChrome()
		' Initialize ChromeDriver
		Dim driver = New ChromeDriver()

		' Navigate to the specified URL
		driver.Navigate().GoToUrl("https://www.ironpdf.com")

		' Additional actions can be implemented here

		' Close the browser after tasks are complete
		driver.Quit()
	End Sub
End Class
$vbLabelText   $csharpLabel

此代碼片段演示如何使用 Selenium WebDriver 啟動 Chrome,這是網頁自動化中的基本步驟。

使用 ChromeDriver 進行基本自動化

一旦在您的 C# 項目中設置了 Selenium ChromeDriver,下一步就是自動化與網頁的交互。 此基本自動化將演示如何使用 ChromeDriver 瀏覽、搜索以及與網頁上的元素進行交互。

在 Chrome 中啟動和導航

打開 URL: 使用 Navigate().GoToUrl() 方法打開網頁。

與網頁元素交互:使用 FindElement() 等多種方法定位元素並執行點擊或輸入文本等操作。

示例:在網頁上搜索

using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;

public class WebSearch
{
    public void PerformSearch()
    {
        // Initialize ChromeDriver
        var driver = new ChromeDriver();

        // Navigate to Google
        driver.Navigate().GoToUrl("https://www.google.com");

        // Locate the search box by its name attribute
        var searchBox = driver.FindElement(By.Name("q"));

        // Enter search text
        searchBox.SendKeys("Selenium ChromeDriver");

        // Submit the search
        searchBox.Submit();

        // Additional actions or validation can be performed here

        // Close the browser after tasks are complete
        driver.Quit();
    }
}
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;

public class WebSearch
{
    public void PerformSearch()
    {
        // Initialize ChromeDriver
        var driver = new ChromeDriver();

        // Navigate to Google
        driver.Navigate().GoToUrl("https://www.google.com");

        // Locate the search box by its name attribute
        var searchBox = driver.FindElement(By.Name("q"));

        // Enter search text
        searchBox.SendKeys("Selenium ChromeDriver");

        // Submit the search
        searchBox.Submit();

        // Additional actions or validation can be performed here

        // Close the browser after tasks are complete
        driver.Quit();
    }
}
Imports OpenQA.Selenium
Imports OpenQA.Selenium.Chrome

Public Class WebSearch
	Public Sub PerformSearch()
		' Initialize ChromeDriver
		Dim driver = New ChromeDriver()

		' Navigate to Google
		driver.Navigate().GoToUrl("https://www.google.com")

		' Locate the search box by its name attribute
		Dim searchBox = driver.FindElement(By.Name("q"))

		' Enter search text
		searchBox.SendKeys("Selenium ChromeDriver")

		' Submit the search
		searchBox.Submit()

		' Additional actions or validation can be performed here

		' Close the browser after tasks are complete
		driver.Quit()
	End Sub
End Class
$vbLabelText   $csharpLabel

在此示例中,Chrome Driver 會導航到 Google,找到搜索框,輸入查詢並提交搜索。 這演示了一個簡單但常見的自動化任務。

Selenium ChromeDriver C#(對開發人員的工作原理):圖 2 - 網頁搜尋

這是 Google Chrome 瀏覽器的輸出:

Selenium ChromeDriver C#(對開發人員的工作原理):圖 3 - ChromeDriver 輸出

IronPDF 简介

IronPDF 是 C# 中一個多用途的庫,可以將 HTML 內容轉換為 PDF 文檔。 其集成到 Selenium ChromeDriver 工作流程中,可以捕獲並轉換網頁為 PDF 格式,使其成為文件和報告的理想工具。

IronPDF 的一個顯著特徵是其 HTML 到 PDF 轉換 功能,確保佈局和樣式保持完整。 此功能將 Web 內容轉換為 PDF,非常適合報告、發票和文檔。 它支持將 HTML 文件、URL 和 HTML 字串轉換為 PDF。

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Initialize the PDF renderer
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Initialize the PDF renderer
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Initialize the PDF renderer
		Dim renderer = New ChromePdfRenderer()

		' 1. Convert HTML String to PDF
		Dim htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>"
		Dim pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent)
		pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf")

		' 2. Convert HTML File to PDF
		Dim htmlFilePath = "path_to_your_html_file.html" ' Specify the path to your HTML file
		Dim pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath)
		pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf")

		' 3. Convert URL to PDF
		Dim url = "http://ironpdf.com" ' Specify the URL
		Dim pdfFromUrl = renderer.RenderUrlAsPdf(url)
		pdfFromUrl.SaveAs("URLToPDF.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

開始使用 IronPDF

安裝IronPDF庫

使用 NuGet 包管理器安裝

要將 IronPDF 集成到您的 Selenium ChromeDriver C# 項目中,請按照 NuGet 包管理器的這些步驟操作:

  1. 開啟 Visual Studio,並在解決方案管理器中右鍵單擊您的項目。
  2. 從彈出菜單中選擇“管理 NuGet 包…”。
  3. 轉到瀏覽標籤並搜索 IronPDF。
  4. 從搜索結果中選擇 IronPDF 庫並點擊安裝按鈕。
  5. 接受任何許可協議提示。

如果您想通過包管理器控制台在您的項目中包括 IronPDF,請在包管理器控制台中執行以下命令:

Install-Package IronPdf

這會將 IronPDF 下載並安裝到您的項目中。

通過 NuGet 網站安裝

有關 IronPDF 的詳細概述,包括其功能、兼容性和其他下載選項,請訪問 NuGet IronPDF 包頁面

通過 DLL 安裝

或者,您可以使用 DLL 文件直接將 IronPDF 整合到您的項目中。從此 IronPDF ZIP 下載 中下載包含 DLL 的 ZIP 文件。 解壓縮並將 DLL 包含在您的項目中。

示例:基本 PDF 創建

using IronPdf;

public class PdfCreation
{
    public void CreatePdfFromHtml()
    {
        // Initialize the PDF renderer
        var renderer = new ChromePdfRenderer();

        // Convert simple HTML string to PDF
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello, IronPDF!</h1>");

        // Save the PDF to a file
        pdf.SaveAs("HelloIronPDF.pdf");
    }
}
using IronPdf;

public class PdfCreation
{
    public void CreatePdfFromHtml()
    {
        // Initialize the PDF renderer
        var renderer = new ChromePdfRenderer();

        // Convert simple HTML string to PDF
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello, IronPDF!</h1>");

        // Save the PDF to a file
        pdf.SaveAs("HelloIronPDF.pdf");
    }
}
Imports IronPdf

Public Class PdfCreation
	Public Sub CreatePdfFromHtml()
		' Initialize the PDF renderer
		Dim renderer = New ChromePdfRenderer()

		' Convert simple HTML string to PDF
		Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello, IronPDF!</h1>")

		' Save the PDF to a file
		pdf.SaveAs("HelloIronPDF.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

在此示例中,一個簡單的 HTML 字串使用 IronPDF 轉換為 PDF 文檔,展示了將網頁內容轉換為固定文檔格式的簡便性。

將 Selenium ChromeDriver 與 IronPDF 集成

在本節中,我們將 Selenium ChromeDriver 與 C# 中的 IronPDF 集成,這一組合允許自動捕獲網頁內容及其轉換為 PDF 格式。 此集成尤其適合創建報告、存檔網頁或從各個網站收集資料。

使用 ChromeDriver 自動化網頁瀏覽

網頁導航:使用 Selenium ChromeDriver 瀏覽和與網頁交互。 這可能涉及填寫表單、導航搜索結果或訪問特定 URL。

使用 IronPDF 將網頁內容轉換為 PDF

捕獲網頁為 PDF:導航到所需網頁內容後,使用 IronPDF 將當前網頁視圖轉換為 PDF 文件。

示例:網頁到 PDF 轉換

using OpenQA.Selenium.Chrome;
using IronPdf;

public class WebPageToPdf
{
    public void ConvertToPdf(string url)
    {
        // Initialize ChromeDriver to automate browsing
        var driver = new ChromeDriver();

        // Navigate to the specified URL
        driver.Navigate().GoToUrl(url);

        // Initialize the PDF renderer
        var renderer = new ChromePdfRenderer();

        // Convert the web page at the URL to PDF
        var pdf = renderer.RenderUrlAsPdf(url);

        // Save the PDF to a file
        pdf.SaveAs("WebContent.pdf");

        // Close the browser after tasks are complete
        driver.Quit();
    }
}
using OpenQA.Selenium.Chrome;
using IronPdf;

public class WebPageToPdf
{
    public void ConvertToPdf(string url)
    {
        // Initialize ChromeDriver to automate browsing
        var driver = new ChromeDriver();

        // Navigate to the specified URL
        driver.Navigate().GoToUrl(url);

        // Initialize the PDF renderer
        var renderer = new ChromePdfRenderer();

        // Convert the web page at the URL to PDF
        var pdf = renderer.RenderUrlAsPdf(url);

        // Save the PDF to a file
        pdf.SaveAs("WebContent.pdf");

        // Close the browser after tasks are complete
        driver.Quit();
    }
}
Imports OpenQA.Selenium.Chrome
Imports IronPdf

Public Class WebPageToPdf
	Public Sub ConvertToPdf(ByVal url As String)
		' Initialize ChromeDriver to automate browsing
		Dim driver = New ChromeDriver()

		' Navigate to the specified URL
		driver.Navigate().GoToUrl(url)

		' Initialize the PDF renderer
		Dim renderer = New ChromePdfRenderer()

		' Convert the web page at the URL to PDF
		Dim pdf = renderer.RenderUrlAsPdf(url)

		' Save the PDF to a file
		pdf.SaveAs("WebContent.pdf")

		' Close the browser after tasks are complete
		driver.Quit()
	End Sub
End Class
$vbLabelText   $csharpLabel

在本示例中,ChromeDriver 導航到指定的 URL,IronPDF 捕獲網頁並將其轉換為 PDF。 這演示了如何自動化網頁瀏覽和文檔生成。

結論

Selenium ChromeDriver C#(對開發人員的工作原理):圖 4 - 授權

進入結束部分時,您已經學會如何利用 Selenium ChromeDriver 在 Chrome 瀏覽器中自動化網絡交互,而在 C# 中利用 IronPDF 將網頁內容轉換為 PDF 文檔。 這一組合為您的 C# 應用程序解鎖了自動化報告、數據存檔和內容管理的眾多可能性。 通過免費試用IronPDF 探索它的功能,授權價格僅從 $799 起。

常見問題解答

Selenium ChromeDriver在網頁自動化中有什麼用途?

Selenium ChromeDriver用於自動化和測試網頁瀏覽器,通過控制Chrome會話來自動執行可編程任務,如打開標籤頁、導航URL和與網頁內容互動。

如何在C#專案中開始使用Selenium ChromeDriver?

要開始使用,需要在Visual Studio中通過NuGet安裝Selenium WebDriver和ChromeDriver。搜索'Selenium.WebDriver'和'Selenium.WebDriver.ChromeDriver'來將它們添加到您的專案中。

如何在 C# 中將 HTML 內容轉換為 PDF?

您可以使用IronPDF將HTML內容轉換為PDF。`ChromePdfRenderer`類允許您將HTML字串、文件或URL渲染為PDF文件,捕捉網頁佈局和樣式。

使用C#將網頁渲染為PDF的步驟是什麼?

首先,使用Selenium ChromeDriver自動化網頁導航。然後,使用IronPDF的`ChromePdfRenderer`捕捉網頁內容並將其保存為PDF文件。

為什麼匹配ChromeDriver版本和Chrome瀏覽器很重要?

匹配ChromeDriver版本和您的Chrome瀏覽器以確保兼容性,這對於自動執行任務無誤非常重要。

如何配置我的系統路徑以執行ChromeDriver?

下載ChromeDriver後,將可執行文件放在專案的bin文件夾中。您可能需要將此路徑添加到系統的環境變數中以進行無縫執行。

Selenium ChromeDriver能否自動與網頁元素互動?

是的,Selenium ChromeDriver可以自動與網頁元素互動。您可以使用FindElement()方法尋找元素並執行點擊或輸入文本等操作。

IronPDF在網頁自動化中扮演什麼角色?

IronPDF用於將HTML和網頁轉換為PDF文件,保留佈局和設計。它通過啟用網頁內容的文檔化和存檔來補充Selenium。

如何將網頁瀏覽自動化與PDF生成集成在C#中?

使用Selenium ChromeDriver自動化網頁瀏覽,使用IronPDF將瀏覽的內容轉換為PDF文件。此集成支持自動化報告和數據存檔任務。

如何將PDF轉換庫添加到我的C#專案中?

使用Visual Studio中的NuGet包管理器將IronPDF添加到您的C#專案。搜索'IronPDF',選擇它,然後點擊安裝即可將庫包含到您的專案中。

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。