LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

一個瀏覽器自動化操作的.Net開源庫

admin
2023年12月13日 16:2 本文熱度 935

推薦一個.Net開源庫,方便通過高級API來控制Chromium 瀏覽器。


01
項目簡介

這是一個基于 Google 開源的 Node.js 庫 Puppeteer 的 .NET 開源庫,方便開發人員使用無頭 Web 瀏覽器抓取 Web、檢索 Javascript 呈現的 HTML,以及與 UI 元素交互等功能。

比如可以用來抓取網頁、生成頁面 PDF 或者圖片、網頁截屏,以及進行自動化測試等。


02
項目核心功能

1、操作瀏覽器:比如新開/關閉瀏覽器窗口核標簽、返回頁面、打印頁面、重新加載頁面等;

2、執行Javascript腳本:執行Js代碼/函數等;

3、操作Html頁面:比如獲取元素的屬性、文本內容,插入、更改元素等;

4、模擬鼠標操作:模擬點擊頁面元素、雙擊頁面元素、拖動頁面元素等;

5、模擬鍵盤輸入:輸入文字、按下按鍵、摁住按鍵等;

6、頁面事件:等待頁面加載完畢、字體加載等事件。


03
使用示例

1、網頁截屏

using PuppeteerSharp;


using var browserFetcher = new BrowserFetcher();

await browserFetcher.DownloadAsync();

await using var browser = await Puppeteer.LaunchAsync(

    new LaunchOptions { Headless = true });

await using var page = await browser.NewPageAsync();

await page.GoToAsync("http://www.xxx.com");

var outputFile = "screenshot.jpg";

await page.ScreenshotAsync(outputFile);

2、生成頁面PDF

using PuppeteerSharp;


using var browserFetcher = new BrowserFetcher();

await browserFetcher.DownloadAsync();

await using var browser = await Puppeteer.LaunchAsync(new LaunchOptions { Headless = true });

await using var page = await browser.NewPageAsync();

await page.GoToAsync("http://www.xxx.com");

//等待字體加載完畢

await page.EvaluateExpressionHandleAsync("document.fonts.ready");

var outputFile = "page.pdf";

await page.PdfAsync(outputFile);

3、加載頁面并獲取頁面的所有超鏈接

using PuppeteerSharp;

using System;


//瀏覽器配置

var options = new LaunchOptions { Headless = true };

await new BrowserFetcher().DownloadAsync();


//打開瀏覽器

using (var browser = await Puppeteer.LaunchAsync(options))

using (var page = await browser.NewPageAsync())

{

    //加載頁面

    await page.GoToAsync("http://www.xxx.com");


    //獲取所有超鏈接

    var jsselectAllAnchors = @"Array.from(document.queryselectorAll('a')).map(a => a.href);";

    var urls = await page.EvaluateExpressionAsync<string[]>(jsselectAllAnchors);

    foreach (string url in urls)

    {

        Console.WriteLine($"Url: {url}");

    }

    Console.ReadLine();

}


04
項目地址

https://github.com/hardkoded/puppeteer-sharp

- End -


該文章在 2023/12/13 18:35:11 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
在线观看成福利网站 | 亚洲另类欧美综合在线je80 | 亚洲日本乱码字幕综合 | 亚洲日本中文字幕区第5页 中文字幕无吗热视频 | 亚洲欧美清纯另类日韩中文字 | 日韩精品一区二区三区中文不卡 |