C# 网页截图全攻略:三种技术与 Chrome 路径查找指南
全局配置
string url = "https://blog.csdn.net/sunshineGGB/article/details/122316754";
一、PuppeteerSharp
1、安装
NuGet搜索安装[PuppeteerSharp]或者在程序包管理器控制台 Install-Package PuppeteerSharp
2、核心代码
string html = PageSourceCodeHelper.GetWebCode1(url, "UTF-8");
PuppeteerHelper.PuppeteerScreenShot(html);
二、Selenium
1、安装库文件
和[PuppeteerSharp]一样安装下方库文件
Selenium.WebDriver
Selenium.WebDriver.ChromeDriver
2、核心代码
var filePath = AppDomain.CurrentDomain.BaseDirectory;
SeleniumHelper.SeleniumScreenshot(url, "mycsdn.png");
三、HtmlToImage
1、安装库文件
和[PuppeteerSharp]一样安装下方库文件
Select.HtmlToPdf.NetCore
System.Drawing.Common
2、核心代码
HtmlToPdfHelper.HtmlToPdfScreenShot(url);
关于如何在使用C#找到Windows上的chrome.exe路径的问题有些头疼
原因如下:
1、没安装Google Chrome,只是将chrome的环境安装在本地如代码的bin文件夹下
2、安装了Google Chrome,通过系统盘的默认安装路径如"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"或ChromeHTML通过注册表寻找
参考
2、Selenium之cannot find Chrome binary错误
3、How do I use C# to get the path to chrome.exe on Windows?
4、在linux上安装谷歌浏览器并且使用selenium操控
5、在Linux上部署selenium,安装google-chrome和chromedriver
C# 网页截图全攻略:三种技术与 Chrome 路径查找指南的更多相关文章
- webBrowser中操作网页元素全攻略
原文 webBrowser中操作网页元素全攻略 1.获取非input控件的值: webBrowser1.Document.All["控件ID"].InnerText; 或webBr ...
- vc6开发ActiveX并发布全攻略(三)(转)
一.环境: windows xp sp3 Microsoft VC++ 6.0 二.制作文件 打开iexpress.exe(windows提供的一个向导式cab制作工具,位置:C:\WINDOWS\s ...
- Python 自动化测试全攻略:五种自动化测试模型实战详解
随着移动互联网的发展,软件研发模型逐步完善,软件交付质量越来越受到软件公司的重视,软件测试技术特别是自动化测试技术开始在软件系统研发过程中发挥着越来越重要的作用. 与传统的手工测试技术相比,自动化测试 ...
- Windows Socket五种I/O模型——代码全攻略(转)
Winsock 的I/O操作: 1. 两种I/O模式 阻塞模式:执行I/O操作完成前会一直进行等待,不会将控制权交给程序.套接字 默认为阻塞模式.可以通过多线程技术进行处理. 非阻塞模式:执行I/O操 ...
- VSCode插件开发全攻略(三)package.json详解
更多文章请戳VSCode插件开发全攻略系列目录导航. package.json 在详细介绍vscode插件开发细节之前,这里我们先详细介绍一下vscode插件的package.json写法,但是建议先 ...
- VSCode插件开发全攻略(七)WebView
更多文章请戳VSCode插件开发全攻略系列目录导航. 什么是Webview 大家都知道,整个VSCode编辑器就是一张大的网页,其实,我们还可以在Visual Studio Code中创建完全自定义的 ...
- 【转】Perl Unicode全攻略
Perl Unicode全攻略 耐心看完本文,相信你今后在unicode处理上不会再有什么问题. 本文内容适用于perl 5.8及其以上版本. perl internal form 在Perl看来, ...
- VSCode插件开发全攻略(十)打包、发布、升级
更多文章请戳VSCode插件开发全攻略系列目录导航. 发布方式 插件开发完了,如何发布出去分享给他人呢?主要有3种方法: 方法一:直接把文件夹发给别人,让别人找到vscode的插件存放目录并放进去,然 ...
- Perl Unicode全攻略
Perl Unicode全攻略 耐心看完本文,相信你今后在unicode处理上不会再有什么问题. 本文内容适用于perl 5.8及其以上版本. perl internal form 在Perl看来, ...
- CSS Grid网格布局全攻略
CSS Grid网格布局全攻略 所有奇技淫巧都只在方寸之间. 几乎从我们踏入前端开发这个领域开始,就不停地接触不同的布局技术.从常见的浮动到表格布局,再到如今大行其道的flex布局,css布局技术一直 ...
随机推荐
- 鸿蒙应用开发从入门到入行 - 篇3:ArkUI布局基础与制作可交互页面
鸿蒙应用开发从入门到入行 - 篇3:ArkUI布局基础与制作可交互页面 导读:在本篇文章里,您将掌握事件.装饰器.双向绑定等相关知识,并利用所学知识做一个待办列表的案例. 练手案例:登录界面 开始之前 ...
- Linux系统安装python3.8与卸载教程
ln -sf /usr/local/python311/bin/python3.11 /usr/local/bin/python3ln -sf /usr/local/python311/bin/pyd ...
- swagger 文件上传以及requestbody参数传递
swagger用来做普通的API测试很方便,在实际开发过程中,经常会有文件上传,或者通过reuestbody传递数据等方式. 这个时候swagger的配置就有一些特殊了 . swagger reque ...
- [转]点云库PCL从入门到精通 随书源码(百度网盘下载)
分享给需要的人. 这里有你想要的东西-暗号-pdx6 相关链接: PCL点云数据处理基础️️️目录
- Python中的包、模块和源码的组织关系
- Datawhale AI 夏令营-天池Better Synth多模态大模型数据合成挑战赛-baseline复现与理解总结(更新中)
在大数据.大模型时代,随着大模型发展,互联网数据渐尽且需大量处理标注,为新模型训练高效合成优质数据成为新兴问题."天池 Better Synth - 多模态大模型数据合成挑战赛"应 ...
- asp.net mvc中换肤机制类库 ThemedViewEngines
制作blog系统或者通用cms系统的时候,我们经常会用到Theme功能.asp.net mvc中的一种实现方式,是继承实现RazorViewEngine即可. 这是在GitHub中找到的一个示例:ht ...
- 前端学习openLayers配合vue3(修改地图样式)
这一块的东西非常简单,基于上一步的继续操作 关键代码,当然对应的对象需要进行相关的引入,为了方便理解,把背景色和边框放在了一起 //填充颜色 style:new Style({ fill:new Fi ...
- uwp 图片剪切
public async void BitmapTransformAndSaveTest() { var uncroppedfile = await Windows.Storage.Applicati ...
- react 计算衍生数据
import React from 'react' import { connect } from 'react-redux' import TodoList from '../components/ ...