有时我会在网上找到一些需要在笔记本上离线使用的文档。通常我会启动 wget 来获取整个网站。
然而,许多项目现在正在转向 wiki,这意味着我也要下载每一个版本和每一个“编辑我”链接。
wget 中是否有任何工具或配置,以便我例如下载仅有的没有查询字符串或与特定正则表达式匹配的文件?
干杯,
顺便一提:wget 有一个非常有用的 -k 开关,可以将任何站内链接转换为其本地对应链接。这将是另一个要求。示例:获取http://example.com页面。然后所有链接到“/...”或“http://example.com/……”必须进行转换才能匹配下载的内容。
答案1
来自 wget 手册页:
-R rejlist --拒绝 rejlist
指定要接受或拒绝的文件名后缀或模式的逗号分隔列表。请注意,如果任何通配符 *、?、[ 或 ] 出现在 acclist 或 rejlist 的元素中,它将被视为模式,而不是后缀。
这看起来正是您所需要的。
注意:为了减少 wiki 服务器的负载,您可能需要查看 -w 和 --random-wait 标志。
答案2
他们中的大多数人对此表示不满,维基百科会主动使用 robots.txt 关闭它们。我会坚持http://en.wikipedia.org/wiki/Special:Export