linux - 使用 Linux Centos 一次保存多个 URL

标签 linux url centos save

所以我在一个 txt 文件中有一个大约 1000 个 url 的列表,每行一个,我希望将每个页面的内容保存到一个文件中,我该如何自动化这个?"

最佳答案

您可以使用带有 -i 选项的 wget 让它下载 URL 列表。假设您的 URL 存储在名为 urls.txt 的文件中:

wget -i urls.txt

这里的问题可能是多个网站的文件名可能相同(例如 index.html),因此 wget 会附加一个数字,这使得它变得困难/无法仅通过查看文件名将文件连接到原始 URL。
解决方案是使用这样的循环:

while read -r line
do
  wget "$line" -O <...>
done < urls.txt

您可以使用 -O 选项指定自定义文件名。

或者您可以从您正在处理的 url“构建”文件名。

while read -r line
do
  fname=$(echo  "$line" | sed -e 's~http[s]*://~~g' -e 's~[^A-Za-z0-9]~-~g')
  fname=${fname}.html
  wget "$line" -O "$fname"
done < urls.txt

关于linux - 使用 Linux Centos 一次保存多个 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25592577/

相关文章:

linux - 如何获取U-Boot调试符号

python - 如何在模板的 url 函数上使用 urlize 过滤器?

http - 如何将 curl 请求转换为浏览器 URL

javascript - 如何调用外部url?

centos - 为 xvfb-run 和 wkhtmltopdf/wkhtmltoimage 设置分辨率

linux - 如何在 CentOS 8.x/7.x/6.x 上安装最新版本的 git

linux - Posix 线程与互斥体同步

linux - GCC for Linux(slitaz 发行版)

linux - 当将彩色关键字 grep 传递到文件时,Bash 不保存颜色

linux - 带有 Slimerjs 的 CasperJS - Xlib : extension "RANDR" missing on display ":99"