【问题标题】:Wget source code for resulting webpage after querying?查询后生成网页的wget源代码?
【发布时间】:2014-09-05 21:28:36
【问题描述】:

当我在网站上批量输入测试数据时,我正在尝试计算搜索框出错的次数。所以我试图 wget 查询结果并查看 html 结果页面中是否有“错误”一词。在向网站提交查询后,我正在尝试下载生成的 html 网页。我构建查询并使用 wget 下载生成的网页。

但是,仅显示 html 的主要内容而不显示结果,因为它是通过使用外部 javascript 文件完成的。只有在浏览器上右键单击“查看页面源”才能看到我想要的 html。有没有一种非手动的方式来使用 wget/curl 来下载此类页面源,而不必单击所有这些?

【问题讨论】:

    标签: html curl web wget


    【解决方案1】:

    javascript 是一个程序,程序的结果在多项式时间内不是确定性的(对于任意输入)。因此,在沙盒环境中加载 javascript,然后针对测试用例执行它会更容易。

    Wget 和 curl 不能这样做:它们没有任何功能来检查/执行获取的结果。实际上,您需要的是一个能够有效加载和测试脚本的浏览器,例如来自 shell 的 wget/curl。幸运的是,已经有这样的东西了:Selenium。它是一个 firefox/chrome/explorer 扩展程序,它使运行这些浏览器的实例可编写脚本,并且易于远程控制。

    如果您想在没有 gui 的情况下以非交互方式运行这些浏览器,我建议使用假的(无硬件)X 服务器。

    谷歌搜索:selenium,谷歌搜索:headless X。祝你好运!

    【讨论】:

    • 您应该包含相关链接。
    • 此致。但我不能给他更好的链接,他可以在谷歌上轻松找到这些链接。我认为,我的大部分帮助是说,他需要搜索什么 - 并在他的解释下,为什么部分不可能。我用谷歌找到的项目主页的一些链接?它真的需要/有用吗?
    • Selenium 是一个知名且稳定的库:链接到它的官方网站(正如我现在在您的回答中所做的那样)是完全合适的,即使 Google 可能有其他可用资源。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-07
    • 2011-08-23
    • 1970-01-01
    • 2023-03-13
    • 2010-12-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多