我想下载一个完整的 HTML 源代码X网页,但是卷曲X链接将返回该网页的部分 HTML 源代码需要滚动查看更多内容。看来卷曲并没有超越“向下滚动”。
到目前为止,我只能手动执行此操作:
1)转到所需的网站
2)在浏览器控制台中执行以下命令以自动滚动(加载每个对象):
var scroll = setInterval(function(){ window.scrollBy(0,1000); }, 2000);
3) 从检查元素复制完整的 HTML 源代码
所以问题是,如何运行curl
命令,以便它在终端输出之前抓取完整的网页内容(滚动直到加载所有对象)以获得与上述步骤相同的结果?如果不一起curl
,也许wget
?
答案1
curl
不是一个成熟的浏览器,并且据我所知不支持执行 JavaScript。它使用HTTP/FTP来获取文件;就这些。如果您想要对依赖于脚本或其他工具的功能进行测试,而裸露的 HTTP 请求无法触及这些工具,那么您将需要研究更深入的测试套件,例如 Selenium。
答案2
执行此操作的唯一方法是模拟网络浏览器,因为您需要运行 Javascript。您应该能够使用 Selenium 来完成此操作,但它肯定需要一些编程,可能是使用 Python。