跳過到頁腳內容
.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# (How it Works For Developers):圖 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 驅動程式導航到 Google,找到搜尋方塊,輸入查詢,並提交搜尋。 這展示了一個簡單但常見的自動化任務。

Selenium ChromeDriver C# (How it Works For Developers):圖 2 - 網頁搜尋

是輸出 Google Chrome 瀏覽器:

Selenium ChromeDriver C# (How it Works For Developers):圖 3 - ChromeDriver 輸出

IronPDF 簡介

IronPDF 是 C# 中的多功能函式庫,可將 HTML 內容轉換為 PDF 文件。 其與 Selenium ChromeDriver 工作流程的整合,可擷取網頁並將其轉換成 PDF 格式,使其成為文件與報告的理想工具。

IronPdf 的顯著特點是其HTML 至 PDF 轉換功能,可確保佈局和樣式完好無損。 此功能可將網頁內容轉換成 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 Library

使用 NuGet 套件管理員安裝

若要使用 NuGet Package Manager 將 IronPDF 整合至您的 Selenium ChromeDriver C# 專案,請遵循下列步驟:

1.開啟 Visual Studio,在解決方案總管中,用滑鼠右鍵按一下專案。 2.從上下文功能表中選擇"管理 NuGet 套件..."。 3.前往瀏覽標籤,搜尋 IronPdf。 4.從搜尋結果中選擇 IronPDF 函式庫,然後按一下安裝按鈕。 5.接受任何許可協議提示。

如果您想透過套件管理員控制台將 IronPDF 包含在專案中,則在套件管理員控制台執行下列指令:

Install-Package IronPdf

它將擷取 IronPDF 並安裝到您的專案中。

使用 NuGet 網站安裝

如需 IronPDF 的詳細概述,包括其功能、相容性和其他下載選項,請造訪 NuGet IronPDF 套件頁面

透過 DLL 安裝

另外,您也可以使用 IronPDF 的 DLL 檔案,直接將 IronPDF 納入您的專案中。從此 IronPDF ZIP Download 下載包含 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

在這個範例中,使用 IronPDF 將一個簡單的 HTML 字串轉換成 PDF 文件,說明網頁內容可以輕鬆轉換成固定的文件格式。

將 Selenium ChromeDriver 與 IronPDF 整合。

在本節中,我們將用 C# 整合 Selenium ChromeDriver 與 IronPDF,這個組合可以自動擷取網頁內容,並將其轉換成 PDF 格式。 此整合對於建立報告、網頁歸檔或從各種網站收集資料特別有用。

使用 ChromeDriver 自動化網頁瀏覽。

網頁導覽:使用 Selenium ChromeDriver 瀏覽網頁並與網頁互動。 這可能涉及填寫表格、瀏覽搜尋結果或存取特定 URL。

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

將網頁擷取成 PDF 檔案:使用 ChromeDriver 導覽到所需的網頁內容後,使用 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# (How it Works For Developers):圖 4 - 授權

本教學結束時,您已學會如何利用 Selenium ChromeDriver 的強大功能來自動執行 Chrome 瀏覽器中的網頁互動,以及如何利用 IronPDF 以 C# 將網頁內容轉換成 PDF 文件。 這種組合為 C# 應用程式內的自動報表、資料歸檔和內容管理開啟了多種可能性。 透過 免費試用 IronPDF 來探索 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 相輔相成,能夠記錄和歸檔網頁內容。

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

使用 Selenium ChromeDriver 自動化網頁瀏覽,並使用 IronPDF 將瀏覽的內容轉換成 PDF 檔案。此整合支援自動化報告與資料歸檔任務。

如何在 C# 專案中加入 PDF 轉換庫?

使用 Visual Studio 中的 NuGet Package Manager 將 IronPDF 加入您的 C# 專案。搜索 "IronPDF",選擇它,然後點擊「安裝」,將庫包含到您的專案中。

Jacob Mellor, Team Iron 首席技术官
首席技术官

Jacob Mellor 是 Iron Software 的首席技術官,作為 C# PDF 技術的先鋒工程師。作為 Iron Software 核心代碼的原作者,他自開始以來塑造了公司產品架構,與 CEO Cameron Rimington 一起將其轉變為一家擁有超過 50 名員工的公司,為 NASA、特斯拉 和 全世界政府機構服務。

Jacob 持有曼徹斯特大學土木工程一級榮譽学士工程學位(BEng) (1998-2001)。他於 1999 年在倫敦開設了他的第一家軟件公司,並於 2005 年製作了他的首個 .NET 組件,專注於解決 Microsoft 生態系統內的複雜問題。

他的旗艦產品 IronPDF & Iron Suite .NET 庫在全球 NuGet 被安裝超過 3000 萬次,其基礎代碼繼續為世界各地的開發工具提供動力。擁有 25 年的商業經驗和 41 年的編碼專業知識,Jacob 仍專注於推動企業級 C#、Java 及 Python PDF 技術的創新,同時指導新一代技術領袖。