我正在使用curl从某个网站上抓取html 代码。然后他们改变了他们的服务器设置,curl 不再能得到给出错误代码 1020 的页面内容然后我改变了我的脚本来使用elinks。
但他们现在再次使用 cloudflare 并且elinks不再有效(仅在这个特定网站中)。它给出了相同的错误代码1020。
是否有任何命令行或选项可以使用其他浏览器(firefox、chromium、google-chrome ...)并在终端中获取页面 html?
我正在使用curl从某个网站上抓取html 代码。然后他们改变了他们的服务器设置,curl 不再能得到给出错误代码 1020 的页面内容然后我改变了我的脚本来使用elinks。
但他们现在再次使用 cloudflare 并且elinks不再有效(仅在这个特定网站中)。它给出了相同的错误代码1020。
是否有任何命令行或选项可以使用其他浏览器(firefox、chromium、google-chrome ...)并在终端中获取页面 html?
如果您可以为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(); }