【问题标题】:wget WIKI, don't get diff pages (exclude by regex?)wget WIKI,不获取差异页面(被正则表达式排除?)
【发布时间】:2009-06-01 17:48:37
【问题描述】:

我正在尝试使用 wget 下载 wiki 的静态镜像。我只想要每篇文章的最新版本(而不是完整的历史或版本之间的差异)。只需下载整个内容并稍后删除不必要的页面很容易,但这样做会花费太多时间并对服务器造成不必要的压力。

我显然不需要很多页面,例如:

WhoIsDoingWhat?action=diff&date=1184177979

有没有办法告诉 wget 不要下载和递归包含 'action=diff' 的 URL?或者以其他方式排除与某些正则表达式匹配的 URL?

【问题讨论】:

    标签: command-line wiki wget


    【解决方案1】:
    -R '*action=diff*,*action=edit*'
    

    【讨论】:

    • 看起来这样做会下载页面,拒绝它,然后删除它(而不是完全跳过下载它)。
    • 虽然它会阻止在被拒绝的页面上递归。
    • 我没有看到任何证据。 “'--reject' 选项的工作方式与'--accept' 相同,只是其逻辑相反;Wget 将下载除列表中与后缀(或模式)匹配的文件之外的所有文件”。 (-R 与 --reject 和 --rejlist 相同。)这似乎清楚地表明它不会下载匹配的模式。
    • 似乎是 wget 中的一个错误。其他人之前也遇到过这个问题:bugs.debian.org/cgi-bin/bugreport.cgi?bug=217243
    • 嗯。嗯,这太他妈的傻了。对不起,你猜你不能用 wget 完成所有的事情。 :(
    猜你喜欢
    • 1970-01-01
    • 2017-09-17
    • 2011-01-04
    • 2013-02-20
    • 1970-01-01
    • 2017-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多