Wget 提取链接并将它们保存到文件中
Wget extract links and save them to a file
我需要从 http://en.wikipedia.org/wiki 下载所有页面链接并将它们全部保存到一个文件中(使用 Windows 的 Wget)。
在 Windows 下无法识别 grep 命令。
wget http://en.wikipedia.org/wiki -q -O - |grep -Po '(?<=href=")[^"]*'
文件中链接的输出无需采用任何特定格式。
你有什么推荐的?
谢谢
这里有多个问题:
- 工具可用性:默认情况下,
wget
和 grep
在 Windows 上不可用。虽然有很多端口,看看 here and here.
- HTTPS 验证:维基百科从
http://
转发到 https://
,因此您很可能必须将选项 --no-check-certificate
添加到调用中(或通过以下方式提供适当的证书存储) --ca-certificate
).
- 在Windows中转义:分隔参数,不要使用单引号
'
,而是双引号"
。您必须像这样 \"
. 转义参数内的任何双引号
- 在 Windows 中转义:脱字符
^
必须像这样转义:^^
.
总而言之,这给你:
wget --no-check-certificate "http://en.wikipedia.org/wiki" -q -O - | grep -Po "(?<=href=\")[^^\"]*"
我需要从 http://en.wikipedia.org/wiki 下载所有页面链接并将它们全部保存到一个文件中(使用 Windows 的 Wget)。
在 Windows 下无法识别 grep 命令。
wget http://en.wikipedia.org/wiki -q -O - |grep -Po '(?<=href=")[^"]*'
文件中链接的输出无需采用任何特定格式。
你有什么推荐的?
谢谢
这里有多个问题:
- 工具可用性:默认情况下,
wget
和grep
在 Windows 上不可用。虽然有很多端口,看看 here and here. - HTTPS 验证:维基百科从
http://
转发到https://
,因此您很可能必须将选项--no-check-certificate
添加到调用中(或通过以下方式提供适当的证书存储)--ca-certificate
). - 在Windows中转义:分隔参数,不要使用单引号
'
,而是双引号"
。您必须像这样\"
. 转义参数内的任何双引号
- 在 Windows 中转义:脱字符
^
必须像这样转义:^^
.
总而言之,这给你:
wget --no-check-certificate "http://en.wikipedia.org/wiki" -q -O - | grep -Po "(?<=href=\")[^^\"]*"