如何将使用javascript创建的网站保存到文件中



一点信息:

当"检查"(谷歌浏览器(时,网站会显示我需要的信息(即指向.pdf的简单链接(。

当我对网站进行 URL 时,只有一部分被保存。 再加上有函数和<脚本>标签的事实,让我相信javascript是罪魁祸首(老实说,我不是100%确定,因为我在这方面很新(。

我需要定期拉取此链接,并且每次都会更改。

问题:

有没有办法让我在 bash 中运行这个 javascript 并将其生成的新 HTML 代码保存到文件中?

不是微不足道的。

通常,对于该方法,您需要:

  • 从 HTML 构造一个 DOM
  • 在该 DOM 的上下文中执行 JavaScript,同时解析相对于您从中获取 HTML 的 URL 的 URL

有一些工具可以帮助解决这个问题,例如Puppeteer,PhantomJS和Selenium,但它们通常适合使用比bash更强大的编程语言驱动。

作为替代方案,您可以查看对页面进行逆向工程。它从某个地方获取数据。您可能可以计算出URL(浏览器开发人员工具的"网络"选项卡在那里很有用(并直接访问它们。

如果你想下载一个用JavaScript生成自己的网页,你需要执行这个JavaScript才能加载页面。为了实现这一点,你可以使用类似于puppeteerNodeJS 的库。还有很多其他库,但这是最受欢迎的。

如果你想知道为什么会发生这种情况,那是因为Web开发人员经常使用React,Vue或Angular等框架来引用最流行的框架,这些框架仅生成不由常见HTTP请求库执行的JavaScript输出。