.NET 帮助

Selenium ChromeDriver C# (开发者如何使用)

Chipego
奇佩戈-卡琳达
2024年一月4日
分享:

在本教程中,我们将深入介绍 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 浏览器启动 Chrome 浏览器

using OpenQA.Selenium.Chrome;
public class ChromeAutomation
{
    public void StartChrome()
    {
        var driver = new ChromeDriver();
        driver.Navigate().GoToUrl("https://www.ironpdf.com");
    }
}
using OpenQA.Selenium.Chrome;
public class ChromeAutomation
{
    public void StartChrome()
    {
        var driver = new ChromeDriver();
        driver.Navigate().GoToUrl("https://www.ironpdf.com");
    }
}

此代码片段演示了如何使用 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()
    {
        var driver = new ChromeDriver();
        driver.Navigate().GoToUrl("https://www.google.com");
        var searchBox = driver.FindElement(By.Name("q"));
        searchBox.SendKeys("Selenium ChromeDriver");
        searchBox.Submit();
    }
}
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
public class WebSearch
{
    public void PerformSearch()
    {
        var driver = new ChromeDriver();
        driver.Navigate().GoToUrl("https://www.google.com");
        var searchBox = driver.FindElement(By.Name("q"));
        searchBox.SendKeys("Selenium ChromeDriver");
        searchBox.Submit();
    }
}

在本例中,Chrome 浏览器驱动程序导航到 Google,找到搜索框,输入查询并提交搜索。 这是一项简单而常见的自动化任务。

Selenium ChromeDriver C#(开发者指南):图 2 - 网页搜索

是输出 Google Chrome 浏览器:

Selenium ChromeDriver C#(开发人员如何使用):图 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)
    {
        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)
    {
        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");
    }
}

开始使用IronPDF

立即在您的项目中开始使用IronPDF,并享受免费试用。

第一步:
green arrow pointer


安装 IronPDF 库

使用 NuGet 包管理器安装

要使用 NuGet 包管理器将 IronPDF 集成到您的 Selenium ChromeDriver C# 项目中,请按照以下步骤操作:

  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()
    {
        var renderer = new ChromePdfRenderer();
        var PDF = renderer.RenderHtmlAsPdf("<h1>Hello, IronPDF!</h1>");
        PDF.SaveAs("HelloIronPDF.pdf");
    }
}
using IronPdf;
public class PdfCreation
{
    public void CreatePdfFromHtml()
    {
        var renderer = new ChromePdfRenderer();
        var PDF = renderer.RenderHtmlAsPdf("<h1>Hello, IronPDF!</h1>");
        PDF.SaveAs("HelloIronPDF.pdf");
    }
}

在本例中,使用 IronPDF 将一个简单的 HTML 字符串转换成 PDF 文档,说明了将网页内容转换成固定文档格式的便捷性。

将 Selenium ChromeDriver 与 IronPDF 集成

在本节中,我们将 Selenium ChromeDriver 与 IronPDF 在 C# 中集成,这种组合可以实现自动化的网页内容捕获及其转换为 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)
    {
        var driver = new ChromeDriver();
        driver.Navigate().GoToUrl(url);
        var renderer = new ChromePdfRenderer();;
        var PDF = renderer.RenderUrlAsPdf(url);
        PDF.SaveAs("WebContent.pdf");
        driver.Quit();
    }
}
using OpenQA.Selenium.Chrome;
using IronPdf;
public class WebPageToPdf
{
    public void ConvertToPdf(string url)
    {
        var driver = new ChromeDriver();
        driver.Navigate().GoToUrl(url);
        var renderer = new ChromePdfRenderer();;
        var PDF = renderer.RenderUrlAsPdf(url);
        PDF.SaveAs("WebContent.pdf");
        driver.Quit();
    }
}

在本例中,ChromeDriver 浏览指定的 URL,IronPDF 捕获网页并将其转换为 PDF。 演示如何自动进行网页浏览和文档生成。

结论

Selenium ChromeDriver C#(开发人员如何使用):图4 - 许可证

本教程结束时,您已经学会了如何利用 Selenium ChromeDriver 的强大功能在 Chrome 浏览器中自动执行 Web 交互,以及如何利用 IronPDF 将 Web 内容转换为 C# 的 PDF 文档。 这种组合为您的 C# 应用程序中的自动报告、数据归档和内容管理提供了多种可能性。 通过免费试用IronPDF,探索IronPDF的功能,之后的许可证价格仅起始于$749。

Chipego
软件工程师
Chipego 拥有出色的倾听技巧,这帮助他理解客户问题并提供智能解决方案。他在 2023 年加入 Iron Software 团队,此前他获得了信息技术学士学位。IronPDF 和 IronOCR 是 Chipego 主要专注的两个产品,但他对所有产品的了解每天都在增长,因为他不断找到支持客户的新方法。他喜欢 Iron Software 的合作氛围,公司各地的团队成员贡献他们丰富的经验,以提供有效的创新解决方案。当 Chipego 离开办公桌时,你经常可以发现他在看书或踢足球。
< 前一页
Fluent Assertions C#(它对开发者的工作方式)
下一步 >
Mailkit C#(它是如何为开发人员工作的)