我尝试使用Powershell下载并保存文本文件http://www.gutenberg.org/cache/epub/164/pg164.txt。我尝试使用代码:
$curl http://www.gutenberg.org/cache/epub/164/pg164.txt -OutFile verne.txt
但不是保存文本文件,而是保存了http://www.gutenberg.org/ebooks/164?msg=welcome_stranger页面源的文本文件。我想知道我的代码是否有问题,或者我是否需要使用其他代码。
答案 0 :(得分:0)
它是重定向。如果您将URL放在浏览器中,您将获得相同的欢迎陌生人页面。我的猜测是,他们不希望您以这种方式访问此内容。他们可能需要登录,或者至少需要有效的会话cookie。
答案 1 :(得分:0)
您的链接是重定向,请尝试以下操作:
$uri = 'www.gutenberg.org/ebooks/164.txt.utf-8'
$request = Invoke-WebRequest -Uri $uri -MaximumRedirection 0 -ErrorAction Ignore
if($request.StatusDescription -eq 'found')
{
#redownload the new url (redirection)
$request=Invoke-WebRequest -Uri $request.Headers.Location
$request.ParsedHtml.body.outerText
}