小编har*_*ded的帖子

如何在 ubuntu 中解决这些警告?

我无法理解这个问题的本质。我提供了我所拥有的堆栈跟踪:

kestrel.service - ASP.NET Core Application running on Ubuntu
   Loaded: loaded (/etc/systemd/system/kestrel.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2017-08-29 14:34:18 BRT; 7s ago
 Main PID: 2356 (dotnet)
    Tasks: 25
   Memory: 173.9M
      CPU: 6.913s
   CGroup: /system.slice/kestrel.service
           ??2356 /usr/bin/dotnet /var/www/publish/Abp.Web.Mvc.dll

Aug 29 14:34:18 ubuntu systemd[1]: Started ASP.NET Core Application running on Ubuntu.
Aug 29 14:34:20 ubuntu dotnet-example[2356]: : Microsoft.AspNetCore.DataProtection.Repositories.EphemeralXmlRepository[50]
Aug 29 14:34:20 ubuntu dotnet-example[2356]:       Using an in-memory repository. Keys will not be persisted to storage.
Aug 29 14:34:20 ubuntu …
Run Code Online (Sandbox Code Playgroud)

ubuntu asp.net-core aspnetboilerplate

5
推荐指数
1
解决办法
4507
查看次数

C#流程:使用管道/文件描述符

我试图以与Puppeteer在NodeJS中相同的方式连接到Chromium 。

在NodeJS中,这看起来非常简单。您向stdio数组添加了另外两个参数,并且有了管道。

我无法在Puppeteer-Sharp中实现相同的逻辑。我花了一些时间在这里阅读许多问题和答案。我读到有关AnonymousPipeServerStream的信息,但并不高兴。

这是一个我无法使其工作的示例:

AnonymousPipeServerStream streamReader = new AnonymousPipeServerStream(PipeDirection.In, HandleInheritability.Inheritable);
AnonymousPipeServerStream streamWriter = new AnonymousPipeServerStream(PipeDirection.Out, HandleInheritability.Inheritable);

var chromeProcess = new Process();
chromeProcess.EnableRaisingEvents = true;
chromeProcess.StartInfo.UseShellExecute = false;
chromeProcess.StartInfo.FileName = "/.local-chromium/MacOS-536395/chrome-mac/Chromium.app/Contents/MacOS/Chromium";
chromeProcess.StartInfo.Arguments = 
    "--MANY-MANY-ARGUMENTS  " +
    "--remote-debugging-pipe  " +
    "--user-data-dir=/var/folders/0k/4qzqprl541b74ddz4wwj_ph40000gn/T/mz0trgjc.vlj " +
    "--no-sandbox " +
    "--disable-dev-shm-usage " + 
    streamReader.GetClientHandleAsString() +
    streamWriter.GetClientHandleAsString();

chromeProcess.Start();

streamReader.DisposeLocalCopyOfClientHandle();
streamWriter.DisposeLocalCopyOfClientHandle();

Task task = Task.Factory.StartNew(async () =>
{
    var reader = new StreamReader(streamReader);
    while (true)
    {
        var response = await …
Run Code Online (Sandbox Code Playgroud)

c# pipe process

5
推荐指数
1
解决办法
184
查看次数

Application Insight Snapshot Debugger:不会从 .NET Full Framework 站点推送快照

我创建了一个全新的 Web 应用程序 .NET Full Framework 4.7.2,添加了 Application Insights 快照收集器,但快照没有被推送到服务器。

我什至没有得到Don't see the snapshot? troubleshoot他们在这里提到的链接。

我使用 .NET Core 应用程序测试了我的集成密钥,它按预期工作,我什至得到了%TEMP%\Dumps64他们在该文档中提到的日志。

当我使用 .NET Framework 应用程序时,我在 %TEMP% 文件夹中没有看到任何活动。正在将异常推送到 Application Insights,因此集成密钥有效并且正在捕获异常。

这些是我添加的包:

<package id="Microsoft.ApplicationInsights" version="2.9.1" targetFramework="net472" />
<package id="Microsoft.ApplicationInsights.Agent.Intercept" version="2.4.0" targetFramework="net472" />
<package id="Microsoft.ApplicationInsights.DependencyCollector" version="2.9.1" targetFramework="net472" />
<package id="Microsoft.ApplicationInsights.PerfCounterCollector" version="2.9.1" targetFramework="net472" />
<package id="Microsoft.ApplicationInsights.SnapshotCollector" version="1.3.3" targetFramework="net472" />
<package id="Microsoft.ApplicationInsights.TraceListener" version="2.9.1" targetFramework="net472" />
<package id="Microsoft.ApplicationInsights.Web" version="2.9.1" targetFramework="net472" />
<package id="Microsoft.ApplicationInsights.WindowsServer" version="2.9.1" targetFramework="net472" />
<package id="Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel" version="2.9.1" targetFramework="net472" />
Run Code Online (Sandbox Code Playgroud)

这就是我的 …

asp.net azure azure-application-insights

5
推荐指数
1
解决办法
1165
查看次数

Puppeteer - 评估方法中的异步函数抛出错误

我正在尝试检查og:image源是否存在。如果我想在评估函数中调用异步方法,则会出现Error: Evaluation failed: [object Object]错误。

    Error: Evaluation failed: [object Object]
    at ExecutionContext._evaluateInternal (.../node_modules/puppeteer/lib/ExecutionContext.js:122:13)
    at processTicksAndRejections (internal/process/task_queues.js:89:5)
    at async ExecutionContext.evaluate (.../node_modules/puppeteer/lib/ExecutionContext.js:48:12)
  -- ASYNC --
    at ExecutionContext.<anonymous> (.../node_modules/puppeteer/lib/helper.js:111:15)
    at DOMWorld.evaluate (.../node_modules/puppeteer/lib/DOMWorld.js:112:20)
    at processTicksAndRejections (internal/process/task_queues.js:89:5)
  -- ASYNC --
    at Frame.<anonymous> (.../node_modules/puppeteer/lib/helper.js:111:15)
    at Page.evaluate (.../node_modules/puppeteer/lib/Page.js:827:43)
    at Page.<anonymous> (.../node_modules/puppeteer/lib/helper.js:112:23)
    at run (/Users/andrejgajdos/devel/link-preview/app.js:195:28)
    at processTicksAndRejections (internal/process/task_queues.js:89:5)
Run Code Online (Sandbox Code Playgroud)

应用程序.sj

const puppeteer = require("puppeteer");
const util = require('util');
const urlExists = util.promisify(require('url-exists'));

const run = async () => {
  try {
    const browser …
Run Code Online (Sandbox Code Playgroud)

javascript node.js web-scraping puppeteer

5
推荐指数
1
解决办法
7403
查看次数

Headless Chrome / Puppeteer 窗口大小与 setViewport

进行一些网络爬行。

有人可以向我解释一下,以下之间有什么区别(如果有的话):

  1. 实例化 headless chrome 时使用窗口大小参数:

--window-size=${width},${height}

  1. 设置视口

page.setViewport({width,height});

--

我想知道使用第一种方法相对于第二种方法是否有任何优势。

例如,在主机看来,如果我使用半随机宽度/高度(即从合理值列表中选择),第一个是否会像选择随机用户代理一样为我提供任何熵优势?

第二种方法,“setViewport”方法,只是一个客户端的东西,用于在想要获取屏幕截图的情况下渲染实际页面?或者,它是否也通知/向主机提供有关性质的足够信息我的虚拟计算机分辨率...

非常感谢。

NH

javascript google-chrome node.js puppeteer

5
推荐指数
1
解决办法
5852
查看次数

编剧错误:未下载 Firefox 修订版。运行“npm install”或“yarn install”

const playwright = require("playwright");

(async () => {
  const browsers = ["chromium", "firefox", "webkit"];

  for (const browserType of browsers) {
    const browser = await playwright[browserType].launch({args: ['--no-sandbox']});
    const context = await browser.newContext();
    const page = await context.newPage("http://whatsmyuseragent.org/");

    await page.screenshot({ path: `example-${browserType}.png` });
  }
})();
Run Code Online (Sandbox Code Playgroud)

运行此脚本后,我得到 UnhandledPromiseRejectionWarning: E​​rror: Firefox revision is not download. 在控制台中运行“npm install”或“yarn install”。如何解决?

javascript playwright

5
推荐指数
1
解决办法
513
查看次数

使用 puppeteer-core 连接到 Chrome 中当前活动的选项卡

我正在使用puppeteer-core并连接到我自己的 chrome 安装。这工作正常,但如何在当前活动选项卡上执行命令?如何获得它的参考?

const wsChromeEndpointurl = 'ws://127.0.0.1:9222/devtools/browser/12345';
const browser = await puppeteer.connect({
    browserWSEndpoint: wsChromeEndpointurl
});

const page = <active tab> // what do I need here?
Run Code Online (Sandbox Code Playgroud)

(我的目标是做一些事情,比如手动登录网站,然后让我们puppeteer接管。所以我真的很想使用puppeteer-core

javascript webautomation node.js puppeteer

5
推荐指数
1
解决办法
1038
查看次数

如何使用 C# 在剧作家中使用“expect” - Xunit

我将一些剧作家测试从 js 中的 Visual Studio 代码移植到使用 xuint 的 Visual Studio C#。

我似乎无法让 Expect 命令在 Visual Studio 中工作。

在 javascript 项目中,我将执行以下操作来检查元素是否包含一些文本:

await expect(page.locator('elementtofind')).toContainText('myText');
Run Code Online (Sandbox Code Playgroud)

在 C# 中,如果我写同样的东西,我会在expect命令上得到“名称‘标识符’在当前上下文中不存在”错误

在 JS 项目中我的导入语句是

import { test, expect } from '@playwright/test';
Run Code Online (Sandbox Code Playgroud)

在 C# 项目中我使用:

using Microsoft.Playwright;
Run Code Online (Sandbox Code Playgroud)

其中似乎不包含期望

作为临时解决方法,我在 C# 中执行以下操作以获得相同的结果

var item1 = page.Locator("elementtofind");
        Assert.Equal("myText", await item1.InnerTextAsync());
Run Code Online (Sandbox Code Playgroud)

但想在我的测试中使用预期功能。

有谁知道我如何在我的项目中实现这一点?

c# playwright

5
推荐指数
1
解决办法
3452
查看次数

Puppeteer 有没有办法从 Chrome 网络标签中获取确切的数据?

我正在尝试使用 Puppeteer 导航到 URL 并从 Chrome 开发人员工具的网络选项卡中提取指标。例如,导航到此页面会显示以下网络信息,并捕获总共 47 个请求。 在此处输入图片说明

但是,我正在尝试使用以下代码获取这些指标:

import { Browser, Page } from "puppeteer";

const puppeteer = require('puppeteer');

async function run() {
    const browser: Browser = await puppeteer.launch({
        headless: false,
        defaultViewport: null
    });

    const page: Page = await browser.newPage();
    await page.goto("/sf/ask/2131917511/");

    let performanceTiming = JSON.parse(
        await page.evaluate(() => JSON.stringify(window.performance.getEntries()))
    );

    console.log(performanceTiming);
}

run();
Run Code Online (Sandbox Code Playgroud)

但是,当我performanceTiming查看该对象时,它只有 34 个项目: 在此处输入图片说明

因此,我的问题是:

  1. 为什么“网络”选项卡与performance.getEntries()显示的请求数量不同?
  2. 是否可以performance.getEntries()显示所有请求而不是仅显示其中的一部分?
  3. Puppeteer 是否可以从“网络”选项卡中获取所有数据?

javascript node.js google-chrome-devtools puppeteer

4
推荐指数
1
解决办法
3412
查看次数

如何在 Puppeteer 中找到 document.activeElement

我想用 puppeteer 自动填写表格。我填写第一个输入,然后单击一个按钮,然后创建一个具有焦点的新输入字段。

我怎样才能选择这个输入?我可以使用 document.activeElement 吗?如何使用?

  let newActivity = 'button.new_activity'
  await page.waitForSelector(newActivity)
  await page.click(newActivity)

// find active/focused input
await page.type(focusedInput, 'message')

Run Code Online (Sandbox Code Playgroud)

javascript autofill webautomation node.js puppeteer

4
推荐指数
1
解决办法
1508
查看次数