0

我正在使用curl从某个网站上抓取html 代码。然后他们改变了他们的服务器设置,curl 不再能得到给出错误代码 1020 的页面内容然后我改变了我的脚本来使用elinks

但他们现在再次使用 cloudflare 并且elinks不再有效(仅在这个特定网站中)。它给出了相同的错误代码1020。

是否有任何命令行或选项可以使用其他浏览器(firefox、chromium、google-chrome ...)并在终端中获取页面 html?

4

1 回答 1

1

如果您可以为Node.js编写脚本,这里有一个使用puppeteer库的小示例。在页面加载到无头(不可见)Chrome 中后,它会记录页面源代码,其中包含由页面脚本生成的动态内容:

import puppeteer from 'puppeteer';

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

try {
  const [page] = await browser.pages();
  await page.goto('https://example.org/');
  console.log(await page.content());

} catch (err) { console.error(err); } finally { await browser.close(); }
于 2021-07-30T19:23:09.867 回答