【问题标题】:trying to set referer in browser but i get error in puppeteersharp?试图在浏览器中设置引用,但我在 puppeteersharp 中出现错误?
【发布时间】:2021-05-24 06:40:26
【问题描述】:

我想在 c# 中将引用者设置为 puppeteersharp 但我收到错误

无法从“字符串”转换为 System.Collections.Generic.Dictionary<string, string>

这是我的代码:

Browser browser = await Puppeteer.LaunchAsync(new LaunchOptions
        {

            Headless = false,
            ExecutablePath = textBox6.Text,

            //Args = { '--start-maximized' },
            Args = new string[]
            {string.Format("--proxy-server={0}",line)}



        });

        // Create a new page and go to Bing Maps
        Page page = await browser.NewPageAsync();
        //await page.GoToAsync("https://music.apple.com/login");
        await page.SetUserAgentAsync("Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36");
        await page.SetExtraHttpHeadersAsync("facebook.com");

这是我得到的错误: enter image description here

【问题讨论】:

  • 该错误是 TypeMismatch 错误。
  • 如果您看到您的代码格式不正确,您有什么理由不尝试修复它吗?...它使(可能会帮助您的人)更容易阅读跨度>
  • 我遇到的错误是:无法从 'string' 转换为 System.Collections.Generic.Dictionary 这是包含错误的行:await page.SetExtraHttpHeadersAsync("facebook .com");
  • 您要添加的额外 http 标头是什么?
  • @hardkoded 我想更改推荐人:facebook 或 instagram 或....,在转到任何链接之前,我如何使用 puppeteer sharp 来做到这一点?

标签: c# puppeteer puppeteer-sharp


【解决方案1】:

SetExtraHttpHeadersAsync 需要一个带有标题的字典:

await Page.SetExtraHttpHeadersAsync(new Dictionary<string, string>
{
  ["Referer"] = "Bar"
});

【讨论】:

  • @hardkoked 如何在 Windows 7 中运行我的 puppeteersharp 代码而不会出现 websocket 问题?
  • 你不能:(对不起
  • @hardkoked 但我在 github 中发现:如果您需要在 Windows 7 上运行 Puppeteer-Sharp,您可以通过 LaunchOptions.WebSocketFactory 属性使用 System.Net.WebSockets.Client.Managed 我想将它添加到我的代码中以便与 Windows 7 一起工作,你能帮忙吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-02
  • 2014-04-08
  • 2016-09-22
  • 1970-01-01
  • 2014-02-24
  • 2014-04-13
  • 1970-01-01
相关资源
最近更新 更多