我正在尝试下载两个网站以包含在CD中:
http://boinc.berkeley.edu/trac/wiki http://www.boinc-wiki.info
我遇到的问题是这些都是维基。 所以当下载与例如:
wget -r -k -np -nv -R jpg,jpeg,gif,png,tif http://www.boinc-wiki.info/
我得到了很多文件,因为它也遵循链接,如…?action = edit …?action = diff&version = …
有人知道一个方法来解决这个问题吗?
我只想要当前的页面,没有图像,没有差异等。
PS:
wget -r -k -np -nv -l 1 -R jpg,jpeg,png,gif,tif,pdf,ppt http://boinc.berkeley.edu/trac/wiki/TitleIndex
这工作berkeley但boinc-wiki.info仍然给我麻烦:/
PPS:
我得到了什么似乎是最相关的网页:
wget -r -k -nv -l 2 -R jpg,jpeg,png,gif,tif,pdf,ppt http://www.boinc-wiki.info
wget --reject-regex '(.*)\?(.*)' http://example.com
( --reject-type posix默认--reject-type posix )。 根据其他意见,仅适用于最近(> = 1.14)版本的wget 。
注意看来你可以使用--reject-regex每个wget调用一次。 也就是说,你必须使用| 在一个正则expression式,如果你想select几个正则expression式:
wget --reject-regex 'expr1|expr2|…' http://example.com
wget的文档说:
请注意,查询string(以问号('?'开始的URL末尾的string)不作为接受/拒绝规则的文件名的一部分包含在内,即使这些string实际上会影响所选的名称本地文件,预计未来版本的Wget将提供一个选项来允许匹配查询string。
看起来这个function已经在桌面上了一段时间了,而且还没有做任何事情。
我还没有使用它,但httrack看起来像它有一个比wget更强大的过滤function集,可能更适合你在找什么(阅读有关filterhttp://www.httrack.com/html /fcguide.html )。
新版本的wget(v.1.14)解决了所有这些问题。
你必须使用新选项--reject-regex=....来处理查询string。
请注意,我找不到包含这些新选项的新手册,因此您必须使用帮助命令wget --help > help.txt
Pavuk应该能够做到这一点:
http://pavuk.sourceforge.net/man.html#sect39
Mediawiki例子:
[…]
-skip_url_pattern'oldid = , action = edit , action = history , diff = , limit = , [/ =] User: , [/ =] User_talk: , [^ p] / Special: , = Special:[^ R] , .php / Special:[^ LUA] [^ onl] [^ nul] , MediaWiki :, search: , 帮助:
[…]
看起来你正试图避免下载MediaWiki的特殊页面。 我一旦避免了index.php页面就解决了这个问题:
wget -R '*index.php*' -r ... <wiki link>
然而,维基使用了维基百科( http://<wiki>/en/Theme )中所见的URL,而不是我在其他地方看到的模式( http://<wiki>/index.php?title=Theme )。 既然你给的链接使用维基百科模式的URL,我认为这个解决scheme也可以为你工作。
'-R rejlist –reject rejlist'指定文件名后缀或模式的逗号分隔列表来接受或拒绝(请参阅文件types)。 请注意,如果任何通配符字符'*','?','['或']'出现在acclist或rejlist的元素中,它将被视为模式,而不是后缀。
模式可能是你想要的。 我不确定这些模式有多复杂,但您可以尝试只接受某些文件或阻止:
wget -r -k -np -nv -R jpg,jpeg,gif,png,tif,*\? http://www.boinc-wiki.info/
接受:
wget -r -k -np -nv -R jpg,jpeg,gif,png,tif -A [a-zA-Z.] http://www.boinc-wiki.info/
编辑:nvm根据其他职位。