PuppeteerSharp介绍可以看这篇文章:PuppeteerSharp: 更友好的 Headless Chrome C# API

PuppeteerSharp的github地址:https://github.com/hardkoded/puppeteer-sharp

我这边主要是记录一下安装使用时遇到的一些问题

开发环境

win7 64位

vs2017

netcore2.2

nuget安装PuppeteerSharp:Install-Package PuppeteerSharp -Version 2.0.3

 

做什么

以下是demo代码,一个简单的把网页转为pdf文件代码

using System;
using System.Threading.Tasks;
using PuppeteerSharp;
namespace PuppeteerSharpDemo
{
    class Program
    {
        static void Main(string[] args)
        {
            var d = Task.Run(async () =>
             {
                 await Executed();
             });
            d.Wait();


            Console.WriteLine("ok");
            Console.ReadKey();

        }
        
        async static Task Executed()
        {
            var outputFile = Environment.CurrentDirectory + "\\test\\123.pdf";
            //问题就在这里
            var result = await new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultRevision);

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

            var page = await browser.NewPageAsync();
            await page.GoToAsync("http://baidu.com/");
            await page.PdfAsync(outputFile);
        }
    }
}
View Code

相关文章: