如何获取网页的html源代码
How to get html source code of a web page
我正在使用 curl 从某个网站 抓取 html 代码。然后他们更改了服务器设置,curl 不再能够获取页面内容并给出错误代码 1020
然后我将脚本更改为使用 elinks.
但他们现在再次使用 cloudflare,并且 elinks 不再有效(仅在该特定网站中)。它给出了相同的错误代码 1020.
是否有任何命令行或选项可以使用其他浏览器(firefox、chromium、google-chrome...)并在终端中获取页面 html?
如果您可以为 Node.js, here is a small example using 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(); }
我正在使用 curl 从某个网站 抓取 html 代码。然后他们更改了服务器设置,curl 不再能够获取页面内容并给出错误代码 1020 然后我将脚本更改为使用 elinks.
但他们现在再次使用 cloudflare,并且 elinks 不再有效(仅在该特定网站中)。它给出了相同的错误代码 1020.
是否有任何命令行或选项可以使用其他浏览器(firefox、chromium、google-chrome...)并在终端中获取页面 html?
如果您可以为 Node.js, here is a small example using 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(); }