首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

WPF使用URL协议实现网页中打开应用

常见方案 网页唤起指定软件,其实就是利用URL来执行一个关键字Key,这个Key是注册表中的一个键,Value是指定路径的exe,亦可携带参数启动exe; 步骤1 检查关键字是否已存在 //检查注册表是否已包含...{ commandKey.SetValue("", "\"" + value + "\"" + " \"%1\""); } fKey .SetValue("URL...a=arg1&e=arg2">点击打开MyApp.exe 步骤4 软件启动时解析参数 //此处会获取到步骤2中设置的Value;和步骤3中的href;参数自行解析 var args = Environment.GetCommandLineArgs...(); REG 保存为Notepad2.reg Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Notepad2] "URL Protocol...HKEY_CLASSES_ROOT\Notepad2\shell\open\command] @="\"D:\\Tools\\Notepad2\\Notepad2.exe\" \"%1\"" 注意事项: 路径使用双杠

1K21
您找到你想要的搜索结果了吗?
是的
没有找到

基于puppeteer模拟登录抓取页面

针对这种情况,如果基于puppeteer来做,流程就变成了 puppeteer启动浏览器打开用户网站-->页面渲染-->返回渲染后结果,简单的用伪代码实现如下: const puppeteer = require...('puppeteer'); async getHtml = (url) =>{ const browser = await puppeteer.launch(); const page...login页面(各种管理系统) 对于这种类型的页面我们需要做的就是模拟登录,所谓模拟登录就是让浏览器去登录,这里需要用户提供对应网站的用户名和密码,然后我们走如下的流程: 访问用户网站-->用户网站检测到登录跳转到...=(url)=>{ const browser = await puppeteer.launch(); const page =await browser.newPage();...启动浏览器打开请求页面-->点击登录按钮-->输入用户名和密码登录 -->重新加载页面 基本代码如下图: const puppeteer = require("puppeteer"); async autoLoginV2

6.1K100

自动化生成骨架屏的技术方案设计与落地

'))) { // 使用nvm,则全局包就在 prefix 下的 node_modules 内 localPuppeteerNpmPath =...(stdout, 'lib', 'node_modules', 'puppeteer'))) { // 使用nvm,则全局包就在 prefix 下的lib 下的 node_modules...puppeteer /** * 获取骨架屏 HTML 内容 * @param pageUrl 需要生成骨架屏的页面 url * @param cookies 登陆所需的 cookies * @param...基本使用 ​ 约束 需全局安装 puppeteer@10.4.0 : tnpm i puppeteer@10.4.0 --g 全局安装后,插件会自动查找本地的 puppeteer 路径,如果找到插件...普通效果 生成的代码大小: 带有通用头和渐变背景色 拍卖通用设计元素,在页面新建空页面配置中即可看到配置 效果如下: 复杂元素的页面效果展示 默认全屏骨架屏 ​ 生成代码大小

89700

web自动化测试-puppeteer入门与实践

(chrome),可以直接在此运行测试用例 •捕获站点的时间线,以便追踪你的网站,帮助分析网站性能问题 Puppeteer使用node语言进行开发的,在使用中你可以使用async/await异步解决方案...add puppeteer 三、使用与例子 本篇内容主要介绍启动实例以及debug相关 Class:Puppeteer Puppeteer 模块提供了一种启动 Chromium 实例的方法。...接着通过browser.newPage方法去打开一个tab,然后使用page.goto打开一个url,接着使用page.screenshot()进行截图,最后browser.close关闭browser...3.控制台输出 上述代码通过await page.evaluate(() => console.log(`url is ${location.href}`));在控制台把url打印出来,evaluate...除了这些我们还可以打开debug的方式进行调试。直接上代码 ? 上述代码中通过 await puppeteer.launch({devtools: true});打开调试模式。 ?

1.5K30

SVG与foreignObject元素

SVG图像及其相关行为被定义于XML文本文件之中,这意味着可以对其进行搜索、索引、编写脚本以及压缩,此外这也意味着可以使用任何文本编辑器和绘图软件来创建和编辑SVG。...SVG SVG是可缩放矢量图形Scalable Vector Graphics的缩写,其是一种用于描述二维矢量图形的XML可扩展标记语言标准,与基于像素的图像格式(如JPEG和PNG)不同,SVG使用数学方程和几何描述来定义图像...SVG图像由基本形状(如线段、曲线、矩形、圆形等)和路径组成,还可以包含文本、渐变、图案和图像剪裁等元素。... 当我们打开DrawIO绘制流程图时,其实也能发现其在绘制文本时使用的就是<foreignObject...这当然是可行的,而且是一件非常有意思的事情,我们可以将DOM + CSS绘制到SVG当中,紧接着将其转换为DATA URL,借助canvas将其绘制出来,最终我们就可以将DOM生成图像以及导出了。

41060

PuppeteerSharp库在C#中的应用案例

4获取接口数据:使用PuppeteerSharp库模拟请求接口,获取图片数据。5过滤处理数据:对获取的图像数据进行过滤和处理,提取出需要的图像信息。...new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultRevision); using var browser = await Puppeteer.LaunchAsync...await browser.CloseAsync(); }}以上是一个简单的使用PuppeteerSharp库的示例,其中包含了创建浏览器实例、打开页面等基本操作。...首先,我们需要创建一个新的工具实例,然后打开一个浏览新的页面,将图片插入到页面中,并使用PuppeteerSharp提供的API来生成PDF文件。...new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultRevision); using var browser = await Puppeteer.LaunchAsync

26210

JS 实现网页截屏五种方法

主要看了以下几个: PhantomJS Puppeteer(chrome headless) SlimerJS dom-to-image html2canvas 测试的网页使用了WebGL技术,所以下面的总结会和...不过,Puppeteer默认会打开浏览器界面,也就是non-headless模式。如果要使用headless模式,可以 ....; 如果想得到PNG内容或原始像素值,可以先使用data URL创建一个图片,使用一个离屏canvas渲染这张图片,然后从canvas中获取想要的数据。...验证的猜想 虽然后面这两种是前端的实现方式,但是结合前面讲的headless库,也是可以实现后端截屏的。...以Puppeteer的API为例,可以首先使用page.addScriptTag(options)往网页中添加前端截屏的库,然后在page.evaluate(pageFunction[, ...args

6.9K30

自动化 Web 性能分析之 Puppeteer 爬虫实践

本文将向大家介绍自动化性能分析使用的核心库——Puppeteer,并结合页面登录场景,介绍 Puppeteer 在百策系统中的应用。...初探 Puppeteer:从页面截图开始 实现页面截图,首先我们需要创建一个浏览器实例,然后打开一个页面,加载指定的 URL,在打开的页面上触发截图操作,最后再将浏览器关闭。...= require('puppeteer'); // 检测页面url const url = 'https://www.zhengcaiyun.cn'; // 检测次数 const times =...双探 Puppeteer:爬取苏宁易购的商品信息 打开电商首页,输入想要的商品名称,点击搜索按钮,跳转至相应的商品列表页,然后一页页浏览,从而找到心仪的商品,这大概就是我们平时网购的样子。...结语 当然, Puppeteer 的强大不止于此,我们可以通过 Puppeteer 实现更多有意思的功能,比如使用 Puppeteer 来检测页面图片是否使用懒加载,后续我们会对其功能的实现进行的分享,

3.4K40

Dr.Mine:一款支持自动检测浏览器内挖矿劫持的Node脚本

因此,Dr.Mine使用puppeteer来自动化捕捉浏览器发送的任何在线加密货币挖矿请求。 当检测到任何与在线加密货币挖矿相关的请求时,该工具都会标记相应的URL和正在使用的加密货币挖矿工具。...4、为了减少额外的带宽和资源消耗,工具不会对如字体、图像、媒体和样式表之类的资源发送请求; 值得一提的是,该工具还使用了bluebird来提升工具的运行速度和效率。  ...工具使用  Dr.Mine支持接受一个URL地址或一个文件作为输入参数,文件中则需要包含有效的URL地址,使用样例如下: node drmine.js list.txt 其中的list.txt内容样例如下...: http://cm2.pw http://cm2.pw/xmr/ https://example.com/ 如果需要直接通过命令行解析目标URL地址的话,可以使用下列命令: node drmine.js.../puppeteer#puppeteer-core 精彩推荐

92030

用Node.js把HTML转成PDF格式

翻译:疯狂的技术宅 原文:https://blog.risingstack.com/pdf-from-html-node-js-puppeteer/ 在本文中,我将展示如何使用 Node.js、Puppeteer...中使用 Puppeteer 方案3 +1:CSS打印规则 总结 在客户端还是服务器端生成?...首先,我们启动浏览器(仅在 headless 模式下支持 PDF 生成),然后打开新页面,设置视口,并导航到提供的URL。...注意:page.pdf 方法接收 options 对象,你可以使用 'path' 选项将文件保存到磁盘。如果提供路径,则 PDF 将不会被保存到磁盘,而是会得到缓冲区。(稍后我将讨论如何处理它。)...在 Docker 中使用 Puppeteer 我认为这是实施中最棘手的部分 —— 所以让我帮你节省几个小时的百度时间。

6.3K30

从网页中提取结构化数据:Puppeteer和Cheerio的高级技巧

Puppeteer是一个基于Node.js的无头浏览器库,它可以模拟浏览器的行为,如打开网页、点击元素、填写表单等。...例如:page.goto(url):打开一个网页page.waitForSelector(selector):等待一个元素出现page.click(selector):点击一个元素page.evaluate...= await browser.newPage();// 打开目标网址await page.goto(url);// 定义一个空数组,用于存储提取的数据let data = [];// 定义一个循环,...) => { // 打开一个新的页面 const page = await browser.newPage(); // 打开目标网址 await page.goto(url); // 获取网页的...await browser.newPage();// 打开目标网址await page.goto(url);// 获取网页的HTML内容const html = await page.content()

46110
领券