问题标签 [pyppeteer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
514 浏览

python - 如何正确地向 Pyppeteer 中的网站发送 POST 请求

我正在尝试在 pyppeteer 中编写一个机器人。我试图用我的代码做的是向具有特定 postData 的网站发送 POST 请求

这是我终端的当前输出:

文件“/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pyppeteer/network_manager.py”,第 447 行,在 continue_

如果不是 self._allowInterception:

AttributeError:“Bot”对象没有属性“_allowInterception”

如果有人可以提供帮助,我将不胜感激。

0 投票
1 回答
462 浏览

python - pyppeteer 浏览器从不关闭并且 TimeoutError 引发

我正在尝试使用 Python Pyppeteer 获取 XHR。这是我的代码。

但是当我运行它时,浏览器永远不会关闭,并且在 30 秒后,它给了我一个 TimeoutError。并且代码应该返回 xhr 响应的 url,但它没有。

0 投票
1 回答
670 浏览

python - python async def如何返回值

我正在尝试从 Python Async 返回 XHR url 列表。下面是我的代码。

但是,当我运行代码时, res.request.url 被打印出来,但没有返回 xhr_list,导致 url 为 None。我的代码有问题吗?

0 投票
0 回答
563 浏览

python - Pyppeteer 没有正确提取 javascript 覆盖率

当我使用 pyppeteer 提取 js 覆盖率时,缺少 javascript 代码的某些部分。

我正在做的是以下内容:

例如,这里留下了一些屏幕截图(使用 pyppeteer 代码提取的内容与我在 chrome 浏览器上运行的覆盖率报告):

在此处输入图像描述

在此处输入图像描述

另一个例子:

在此处输入图像描述

在此处输入图像描述

如屏幕截图所示,缺少一些代码,并且在 chrome 覆盖率报告中显示使用了该代码。有谁知道我错过了什么?我错过了一些配置吗?


编辑:我还找到了一个链接,其中他们有同样的问题。问题是我不明白他们为解决问题所采取的方法:https ://github.com/puppeteer/puppeteer/issues/1054

0 投票
1 回答
698 浏览

javascript - Puppeteer:一旦特殊元素已经出现,就停止等待缓慢的页面

我需要访问一些独立的 URL,其中页面元素的加载速度非常慢。通常需要几分钟才能使整个页面完全加载。但是,此页面只有一小部分有用。有用的部分可以通过页面上的某个选择器来指示。因此,我想知道是否可以告诉 puppeteer 在键选择器已经出现后停止等待页面,以加快 . 有广泛的答案告诉我们使用 await page.waitForSelector('.class_sample');

所以我这样使用它:

但是,它仍然停留在page.goto(). 有时 pyppeteer 会在 30 秒后报告超时错误,因为目标页面太慢。

我发现大多数关于该方法的示例waitForSelector()都放在一个.click()方法后面。我的麻烦情况是页面相互独立(example.com/xxxxx.html),无法通过点击链接访问,所以一个waitForSelector()方法还没有解决我的问题。

任何建议将不胜感激。

0 投票
1 回答
415 浏览

puppeteer - 如何使用 pyppeteer 下载 csv?

我是 pyppeteer 的新手并尝试下载 csv。不幸的是,没有成功。假设我想下载以下 csv:' https://people.sc.fsu.edu/~jburkardt/data/csv/addresses.csv '。只需使用

没有帮助。我试着用

但它也不起作用。如果有人知道如何使它工作或可以给我任何建议,我将不胜感激。

0 投票
1 回答
6106 浏览

python - 使用 pyppeteer 抓取数据

我正在尝试使用pyppeteer从这个站点https://quickfs.net/company/BABA:US抓取数据,没有这个网站会知道我在抓取。

所以我的第一个问题是:

  1. 使用 pyppeteer 进行抓取是否正确,我不会(被网站)注意到进行抓取?

当进入右上角的链接时,会出现一个下拉列表,其中包含以下项目:概览、损益表、...、关键比率。

我想使用 pyppeteer 从下拉列表中选择 Key Ratios ,然后从那里提取Per-Share Items的数据,然后从那里提取Book Value的行。

在我对该网站链接的预览问题的最后评论中,我被告知此下拉菜单“仅触发呈现相同数据的不同方式”。

所以我的第二个和第三个问题是(也许它们是相同的):

  1. 我应该以某种方式模拟使用 pyppeteer 选择的关键比率吗?

  2. 如何从 Key Ratios 触发器中提取数据,使用 pyppeteer,而不会让网站知道有人在抓取它?

我使用这些问题编写了代码来执行此操作,但我的代码仅从第一个概览页面中提取数据。

这是我基于代码的问题

  1. 如何从带有加载屏幕的网页中检索数据?
  2. 使用 pyppeteer 与 asyncio 关联来抓取内容

我也试图从这篇文章中理解:Web Scraping with a Headless Browser: A Puppeteer Tutorial how to use bottoms 但它不是使用 Python 的 pyppeteer 而是 Puppeteer

这是我使用的代码:

提前致谢

0 投票
1 回答
226 浏览

javascript - 如何更改无头 Chrome 检测到的操作系统?

我使用 pyppeteer。但是当我访问https://ipleak.net时,它会检测到我的真实操作系统。我尝试加载这个 scrypt

preload.js

但它不起作用。我能做些什么来隐藏我的真实操作系统?

0 投票
1 回答
3905 浏览

puppeteer - pyppeteer 等到页面的所有元素都加载完毕

我正在使用pyppeteer来触发 headless chrome 并执行一些操作。但首先我希望网页的所有元素都能完全加载。pyppeteer 的官方文档建议使用带有多个参数的waitUntil参数。

我的疑问是我必须传递所有参数还是特别是任何一个就足够了?请建议以下片段是否对我有帮助?

0 投票
1 回答
1018 浏览

selenium - 是否有类似于 Python 的 puppetetteer 的隐形无头浏览器自动化工具?

我知道 Pyppeteer 库和 Pyppeteer Stealth,但它们的问题是我试图从中抓取信息的网站检测到 Pyppeteer Stealth(Puppeteer 的 Python 移植)并阻止它。在 node JS 上使用的原始 Puppetetteer Stealth 在该网站上运行良好,但是,我更愿意在 Python 上创建这个爬虫,因为我更熟悉它。

还有哪些其他隐形和最新的无头浏览器自动化工具可用?

我所需要的只是抓取 HTML 内容并通过 Beautiful Soup 解析它。不幸的是,requests 和 requests-html 库在这个网站上也不起作用。