将网页服务保存为本地文档

要使用 curl命令下载某个 IP 地址(如 192.168.1.1)上 Web 服务后的所有文件,您需要递归下载整个网站。以下是具体步骤和命令:


1. ​​基本递归下载命令​

curl -r -l -L -k -O -J --create-dirs "http://192.168.1.1/[path]"
  • -r​:递归下载(需配合其他工具,纯 curl递归功能有限)。
  • -l​:仅递归到相对链接(避免下载外部链接)。
  • -L​:跟随重定向。
  • -k​:忽略 SSL 证书错误(如果服务使用 HTTPS)。
  • -O -J​:根据服务器返回的文件名保存。
  • --create-dirs​:按 URL 路径创建本地目录。

2. ​​推荐:结合 wget(更强大的递归下载)​

curl的递归功能较弱,建议使用 wget

wget -r -l 10 -k -p -np --user-agent="Mozilla/5.0" http://192.168.1.1/
  • -r​:递归下载。
  • -l 10​:递归深度(10 层)。
  • -k​:转换链接以便本地浏览。
  • -p​:下载所有页面资源(图片/CSS/JS)。
  • -np​:不下载父目录。
  • --user-agent​:模拟浏览器访问。

3. ​​仅下载特定文件类型(如 PDF/ZIP)​

curl -s http://192.168.1.1/ | grep -o 'href="[^"]*\.pdf"' | sed 's/href="//;s/"$//' | xargs -I{} curl -O "http://192.168.1.1/{}"
  • 先解析页面中的 PDF 链接,再逐个下载(替换 .pdf为其他扩展名)。

4. ​​容器/权限问题​

如果遇到权限错误(如之前的 ping问题),请确保:

  • 在宿主机上运行命令(非容器内)。
  • 或为容器添加网络权限: docker run --cap-add=NET_ADMIN --cap-add=NET_RAW [image]

注意事项:

  1. ​合法性与权限​​:确保您有权下载目标服务器内容。
  2. ​避免压垮服务​​:递归下载可能对服务器造成高负载,谨慎使用。
  3. ​路径指定​​:如果文件在特定路径(如 /downloads/),替换命令中的 [path]
  4. ​替代方案​​:大型网站建议使用专业工具(如 httrack)。

​示例完整命令​​:下载 http://192.168.1.1/docs/下的所有文件:

wget -r -l 5 -k -p -np http://192.168.1.1/docs/
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇