如何使用 Unix 命令行工具和正则表达式从网站检索所有 *.html 文件

如何使用 Unix 命令行工具和正则表达式从网站检索所有 *.html 文件

我想从名称中包含特定文本的网站检索所有 .html 文件:

例如 this_is_good_site.html

因此,我想下载名称中带有单词“good”的 .html 文件。我尝试了 wget 和 curl,但我不知道如何使用正则表达式选择这些文件?如果 Unix 上的命令行工具无法做到这一点,是否有 Python 或 Perl 解决方案?

答案1

如果你想用 Python 来实现,你可以考虑使用urlib2- 你可能也会更幸运地回答这个问题堆栈溢出。

答案2

由于您使用的是 Unix 环境,请尝试使用 wget 的递归接受/拒绝选项

wget -r -A "*good*" <site_to_download>

这将执行站点的递归(-r)下载,并且仅接受与模式(“*good*”)匹配的(-A)路径

答案3

尝试使用 HTTrack 网站复制器或类似程序,比命令行更好。将其全部下载到一个目录中,按 .html 排序,复制并粘贴到其他地方,删除剩余部分

http://www.httrack.com/

相关内容