当前位置:首页 > 软件开放 > 正文内容

网页代码编辑工具(网页代码编辑工具有哪些)

软件开放9个月前 (02-11)382

什么是浏览器自动化?

自动化是现代科技的重要标志,它使得机器设备、系统或过程可以在没有人或较少人的直接参与下,按照人的要求,通过自动检测、信息处理、分析判断、操纵控制,实现预期的目标。在工业、农业、军事、科学研究、交通运输、商业、医疗、服务和家庭等方面广泛应用。

浏览器自动化就是其中的一种,它使用应用程序为我们完成重复性的任务,以实现人为干预无法实现的速度和效率水平。

那么,为什么我们需要浏览器自动化呢?实际上,浏览器自动化有很多使用场景:

自动点击网页:最常见的浏览器自动化任务之一是自动单击网页中的按钮或链接。单击按钮用于导航网站、确认数据输入操作、选择指向其他页面的链接或取消导航。

自动填写表单:可以自动执行重复的数据输入任务。源数据可能来自数据库、Excel 或 CSV 文件,甚至从另一个应用程序中读取数据。然后,它可以自动输入到表单中,并通过单击按钮接受信息。

从网页中提取数据:当执行数据输入或搜索任务时,通常需要从网页中提取结果。结果可以是 HTML 标记、文本或字段值、指向文件的超链接,或者在自动化后续过程中可能需要使用的任何其他特定属性。

自动化测试:自动化测试包含了很多方面,比如性能测试。但在浏览器自动化中,我们一般指的是端到端功能测试。例如,检查在登录页面上输入无效的登录名或密码时,是否会显示一条错误消息。

自动点击网页:最常见的浏览器自动化任务之一是自动单击网页中的按钮或链接。单击按钮用于导航网站、确认数据输入操作、选择指向其他页面的链接或取消导航。

自动填写表单:可以自动执行重复的数据输入任务。源数据可能来自数据库、Excel 或 CSV 文件,甚至从另一个应用程序中读取数据。然后,它可以自动输入到表单中,并通过单击按钮接受信息。

从网页中提取数据:当执行数据输入或搜索任务时,通常需要从网页中提取结果。结果可以是 HTML 标记、文本或字段值、指向文件的超链接,或者在自动化后续过程中可能需要使用的任何其他特定属性。

网页代码编辑工具(网页代码编辑工具有哪些)

自动化测试:自动化测试包含了很多方面,比如性能测试。但在浏览器自动化中,我们一般指的是端到端功能测试。例如,检查在登录页面上输入无效的登录名或密码时,是否会显示一条错误消息。

实现浏览器自动化需要考虑如何实现应用程序与浏览器进行交互,这听起来很具有挑战性。但幸运的是,市面上已经有了一些很棒的工具,帮助我们实现浏览器自动化。其中,Playwright 是一款强大的浏览器自动化工具,可以让你轻松地完成上述任务。

什么是 Playwright?

Playwright是一款由Microsoft开发和维护的开源跨浏览器自动化库,它专为Web应用程序而设计。Playwright的特点非常丰富,包括跨浏览器、跨平台、跨语言、自动等待、支持多标签页/浏览器窗口、调试工具支持等等。其中最值得一提的是自动等待功能,它可以在执行动作之前等待元素是可操作的,消除了人为超时的需要,这是导致测试不可靠的主要原因。此外,它还支持多标签页/浏览器窗口,可以像一个真正的用户一样与多页面、多网站交互,并轻松处理frames和浏览器事件。另外,它提供了许多不同的调试选项,使其对开发人员友好。

展开全文

与老牌的自动化测试框架Selenium相比,Playwright更加现代化。Selenium的实现是非常臃肿的3层架构,因为它需要一个特有浏览器的WebDriver中间层实现来与浏览器进行交互。而现代浏览器已经支持了一些原生的功能,比如Chrome DevTools Protocol,它允许开发者通过一个简单的WebSocket连接与浏览器进行交互,这些功能都是基于标准的,而不是特定浏览器的。因此,Playwright无需浏览器帮它实现任何功能,而是利用这些原生功能直接与浏览器进行交互,来实现浏览器自动化。这使得Playwright的架构更加简单,更加现代。

总之,Playwright是一款功能强大、现代化的浏览器自动化工具,它可以更快、更可靠地完成浏览器自动化操作。

Hello Playwright

Playwright是一种跨平台的开源浏览器自动化工具,支持多种编程语言,包括Java、Type、Python、Java和C#。在这里,我们将使用C#编写示例代码。接下来,我们将从设置C#开发环境开始,让你快速掌握Playwright的使用方法。

设置开发环境

虽然可以使用不同的方式开发C#代码,但是大多数C#程序员还是使用Microsoft Visual Studio。因此,我们选择Visual Studio作为本书的集成开发环境(IDE)。

首先,用浏览器访问 https://visualstudio.microsoft.com/zh-hans/downloads,下载所需的Visual Studio版本,保存到“下载”文件夹。 运行刚才下载的引导程序文件以安装Visual Studio Installer。安装完Visual Studio Installer后,可以使用它通过选择所需的功能集或工作负载来自定义安装。在这里,我们选中“ASP.NET 和 Web 开发”和“.NET 桌面开发”,点击“安装”按钮,等待安装完成。

创建C#项目

运行安装好的Visual Studio,在“开始”窗口中,选择“创建新项目”。在“创建新项目”窗口中,选择“控制台应用”作为要创建的应用类型,点击“下一步”按钮。在“配置新项目”窗口中,输入“项目名称”和“位置”,点击“下一步”按钮。在“其他信息”窗口中,选择“.NET 6.0”作为目标框架。点击“创建”按钮,完成项目的创建。

添加Playwright依赖

在Visual Studio的右侧“解决方案资源管理器”的项目名称上点右键,选择“在终端中打开”,进入开发者PowerShell窗口。 在开发者PowerShell窗口中运行以下命令,安装Playwright依赖:

dotnet add package Microsoft.Playwright

然后在顶部菜单栏中,依次选择“生成”“生成解决方案”,等待项目生成成功。

安装浏览器

需要注意的是,Playwright自己启动的浏览器,并不是我们在本机已安装的普通浏览器程序,而是使用它自带的浏览器二进制文件。这样就避免了当机器上没有安装指定类型的浏览器而无法运行应用程序的问题。因此,我们需要在开发者PowerShell窗口中运行以下命令,安装Playwright所有受支持的浏览器二进制文件:

.\bin\Debug\net6.0\playwright.ps1 install

需要注意的是,浏览器二进制文件只需要安装一次,以后就不需要再安装了。

编写代码

在代码编辑器中,全部删除Program.cs原有的默认代码,替换成下列代码:

using Microsoft.Playwright;

var playwright = await Playwright.CreateAsync;

await using var browser = await playwright.Chromium.LaunchAsync;

var page = await browser.NewPageAsync;

await page.GotoAsync( "https://www.baidu.com");

var title = await page.InnerTextAsync( "title");

Console.WriteLine(title);

这段代码实现的功能是:使用Playwright启动Chromium浏览器,打开百度首页,获取页面标题,并输出到控制台。

在顶部菜单栏中,依次选择“调试”“开始调试”,如果代码运行成功,控制台会输出百度首页的页面标题:百度一下,你就知道。

代码解读

在代码编辑器中,打开Program.cs文件,将鼠标悬停在对应的代码行上,可以查看相关的详细说明。

让我们来逐一解读每行代码的作用:

第1行:引入Playwright命名空间。

第3行:创建Playwright实例。

第1行:引入Playwright命名空间。

第3行:创建Playwright实例。

需要注意的是,Playwright的API是异步的。因此,需要使用async/await关键字。在C#中,await关键字的作用是:等待异步操作完成后继续执行后续代码。

第5行:使用Playwright实例,启动Chromium浏览器。

第7行:使用Chromium浏览器实例,创建一个新的页面。

第9行:使用页面实例,打开百度首页。

第11行: 使用页面实例,获取页面标题。

第13行:输出页面标题到控制台。

第5行:使用Playwright实例,启动Chromium浏览器。

第7行:使用Chromium浏览器实例,创建一个新的页面。

第9行:使用页面实例,打开百度首页。

第11行: 使用页面实例,获取页面标题。

第13行:输出页面标题到控制台。

在本章中,我们了解了浏览器自动化以及Playwright的特点。然后我们学习了如何使用Visual Studio创建一个C#项目,以及如何使用Playwright启动Chromium浏览器,打开百度首页,并获取页面标题。

在下一章中,我们将学习Playwright的基本概念。

添加微信号【MyIO666】,邀你加入技术交流群

扫描二维码推送至手机访问。

版权声明:本文由飞速云SEO网络优化推广发布,如需转载请注明出处。

本文链接:http://bjqlhc.com/post/87372.html

分享给朋友:

“网页代码编辑工具(网页代码编辑工具有哪些)” 的相关文章

发行数字藏品需要什么手续(数字藏品能升值吗)

发行数字藏品需要什么手续(数字藏品能升值吗)

本篇文章给大家谈谈发行数字藏品需要什么手续,以及数字藏品能升值吗对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、数字藏品怎么制作 2、朋友支招怎么做数字藏品? 3、数字藏品银行申请流程 4、用稀台元宇宙saas经营数字藏品需要具备什么资质? 5、国家支持数...

怎么自己制作app软件(怎么自己制作app软件上市)

怎么自己制作app软件(怎么自己制作app软件上市)

本篇文章给大家谈谈怎么自己制作app软件,以及怎么自己制作app软件上市对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、如何自学开发app软件 2、如何创建app平台 3、如何制作开发一个软件? 如何自学开发app软件 没有编程基础的话,可以从编程的入门开始学,...

手机游戏账号出售平台哪个好(有什么比较好的出售游戏账号的平台)

手机游戏账号出售平台哪个好(有什么比较好的出售游戏账号的平台)

本篇文章给大家谈谈手机游戏账号出售平台哪个好,以及有什么比较好的出售游戏账号的平台对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、手游账号交易平台哪个好,哪个平台比较安全?? 2、游戏账号出售平台哪个好 3、游戏账号在哪个网站交易比较好? 4、手游交易平台哪个...

c反应蛋白高说明什么(c反应蛋白高说明什么新冠感染后)

c反应蛋白高说明什么(c反应蛋白高说明什么新冠感染后)

本篇文章给大家谈谈c反应蛋白高说明什么,以及c反应蛋白高说明什么新冠感染后对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、c反应蛋白高说明什么 2、c反应蛋白偏高说明什么 3、c-反应蛋白高是怎么回事 4、超敏c反应蛋白偏高说明什么 c反应蛋白高说明什么 C...

送真充手游(送真充手游哪个最好玩)

送真充手游(送真充手游哪个最好玩)

今天给各位分享送真充手游的知识,其中也会对送真充手游哪个最好玩进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、和凡人飞仙传(无限送真充)类似手游有吗? 2、魂斗三国(策划送真充)手游充值有打折吗? 3、和摸金校尉之天字卷(无限送真充)类似手游有吗?...

鱼泡网小程序源码(鱼泡网开发者)

鱼泡网小程序源码(鱼泡网开发者)

今天给各位分享鱼泡网小程序源码的知识,其中也会对鱼泡网开发者进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、小程序开发一般都会提供源码的吗? 2、鱼泡网怎么下载? 3、小程序源码,小程序源码有谁提供的? 小程序开发一般都会提供源码的吗? 这个看你自...