日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
一個(gè)瀏覽器自動(dòng)化操作的.Net開源庫

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

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供紫陽網(wǎng)站建設(shè)、紫陽做網(wǎng)站、紫陽網(wǎng)站設(shè)計(jì)、紫陽網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、紫陽企業(yè)網(wǎng)站模板建站服務(wù),十年紫陽做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

一、項(xiàng)目簡介

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

比如可以用來抓取網(wǎng)頁、生成頁面 PDF 或者圖片、網(wǎng)頁截屏,以及進(jìn)行自動(dòng)化測試等。

二、項(xiàng)目核心功能

  • 操作瀏覽器:比如新開/關(guān)閉瀏覽器窗口核標(biāo)簽、返回頁面、打印頁面、重新加載頁面等;
  • 執(zhí)行JavaScript腳本:執(zhí)行Js代碼/函數(shù)等;
  • 操作Html頁面:比如獲取元素的屬性、文本內(nèi)容,插入、更改元素等;
  • 模擬鼠標(biāo)操作:模擬點(diǎn)擊頁面元素、雙擊頁面元素、拖動(dòng)頁面元素等;
  • 模擬鍵盤輸入:輸入文字、按下按鍵、摁住按鍵等;
  • 頁面事件:等待頁面加載完畢、字體加載等事件。

三、使用示例

1、網(wǎng)頁截屏

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(jsSelectAllAnchors);
    foreach (string url in urls)
    {
        Console.WriteLine($"Url: {url}");
    }
    Console.ReadLine();
}

文章名稱:一個(gè)瀏覽器自動(dòng)化操作的.Net開源庫
網(wǎng)址分享:http://www.dlmjj.cn/article/dphghed.html