如何使用wget从网站下载所有文件(但不是HTML)?

Ani*_*inh 154 ubuntu wget download

如何使用wget和获取网站上的所有文件?

我需要除HTML,PHP,ASP等网页文件以外的所有文件.

Zso*_*kai 248

要筛选特定的文件扩展名:

wget -A pdf,jpg -m -p -E -k -K -np http://site/path/
Run Code Online (Sandbox Code Playgroud)

或者,如果您更喜欢长选项名称:

wget --accept pdf,jpg --mirror --page-requisites --adjust-extension --convert-links --backup-converted --no-parent http://site/path/
Run Code Online (Sandbox Code Playgroud)

这将镜像站点,但没有jpgpdf扩展名的文件将被自动删除.

  • 如果您只想下载没有整个目录架构的文件,可以使用** - nd**选项. (14认同)
  • 不确定这是否是新版本的`wget`但你必须指定一个`--progress`类型,例如`--progress = dot` (8认同)
  • 每个标志是什么意思? (3认同)

izi*_*tti 84

这为我下载了整个网站:

wget --no-clobber --convert-links --random-wait -r -p -E -e robots=off -U mozilla http://site/path/
Run Code Online (Sandbox Code Playgroud)

  • +1为`-e robots = off`!这终于解决了我的问题!:) 谢谢 (19认同)
  • `--random-wait`选项是天才;) (11认同)
  • @izilotti网站所有者能否知道您是否使用此方法WGET他们的网站文件? (2认同)

Jes*_*sse 61

wget -m -p -E -k -K -np http://site/path/
Run Code Online (Sandbox Code Playgroud)

手册页将告诉您这些选项的作用.

wget只会跟踪链接,如果没有链接到索引页面的文件,那么wget就不会知道它的存在,因此不会下载它.即.如果所有文件都链接到网页或目录索引中,它会有所帮助.


Ste*_*ett 23

我试图下载从Omeka的主题页面链接的zip文件- 非常相似的任务.这对我有用:

wget -A zip -r -l 1 -nd http://omeka.org/add-ons/themes/
Run Code Online (Sandbox Code Playgroud)
  • -A:只接受zip文件
  • -r:递归
  • -l 1:一级深(即,只有从此页面直接链接的文件)
  • -nd:不要创建目录结构,只需将所有文件下载到此目录中.

所有的答案-k,-K,-E等选项可能还没有真正理解这个问题,因为这些对于重写HTML页面来进行局部结构,重命名.php文件等.不相关.

从字面上获取 .html etc 之外的所有文件:

wget -R html,htm,php,asp,jsp,js,py,css -r -l 1 -nd http://yoursite.com
Run Code Online (Sandbox Code Playgroud)

  • 我认为`-A`是区分大小写的,所以你必须做`-A zip,ZIP` (2认同)

小智 9

我知道这个话题已经很老了,但我在 2021 年来到这里,寻找一种从镜像下载所有 Slackware 文件的方法 ( http://ftp.slackware-brasil.com.br/slackware64-current/ )。

阅读完所有答案后,对我来说最好的选择是:

wget -m -p -k -np -R '*html*,*htm*,*asp*,*php*,*css*' -X 'www' http://ftp.slackware-brasil.com.br/slackware64-current/
Run Code Online (Sandbox Code Playgroud)

我不得不使用*html*而不是仅仅html为了避免像index.html.tmp.

请原谅我复活这个话题,我认为这可能对我以外的人有用,而且我的疑问与@Aniruddhsinh 的问题非常相似。


ken*_*orb 7

你可以尝试:

wget --user-agent=Mozilla --content-disposition --mirror --convert-links -E -K -p http://example.com/
Run Code Online (Sandbox Code Playgroud)

您还可以添加:

-A pdf,ps,djvu,tex,doc,docx,xls,xlsx,gz,ppt,mp4,avi,zip,rar
Run Code Online (Sandbox Code Playgroud)

接受特定扩展,或仅拒绝特定扩展:

-R html,htm,asp,php
Run Code Online (Sandbox Code Playgroud)

或排除特定区域:

-X "search*,forum*"
Run Code Online (Sandbox Code Playgroud)

如果机器人(例如搜索引擎)忽略了这些文件,您还需要添加: -e robots=off


Sun*_*mar 5

试试这个.它总是适合我

wget --mirror -p --convert-links -P ./LOCAL-DIR WEBSITE-URL
Run Code Online (Sandbox Code Playgroud)


Abd*_*him 5

wget -m -A * -pk -e robots=off www.mysite.com/
Run Code Online (Sandbox Code Playgroud)

这将在本地下载所有类型的文件并从html文件指向它们,并且它将忽略漫游器文件