我想下载只能通过登录 Google 访问的 Google 站点的所有页面的 HTML。Google 不为新的 Google 协作平台提供 API(来源)。更复杂的是,我的 Google 登录要求2SV。
我尝试在 Firefox 中进行身份验证,通过 Firefox 扩展程序cookies.txt保存我的 cookie ,然后使用 wget:
wget \
--load-cookies=cookies.txt \
--no-host-directories \
--no-directories \
--recursive \
--accept '*.html' \
https://sites.google.com/a/example.com/the-website-i-need/
结果只是一个谷歌登录页面。
我还通过cliget 插件在 Firefox 中进行了尝试,它可以生成一个 wget 命令,相当于 Firefox 用于下载的功能。我的想法是将递归选项添加到生成的命令中。但是,即使在将 Google 站点的根页面保存为 .html 文件之后,该插件也只会报告“此会话没有下载”。然后我开始从谷歌网站下载一个 PDF 文件,这确实触发了 cliget 插件。然而,产生的 wget 命令导致了302 Moved Temporarily
wget 忠实地遵循,但这个过程重复了,直到最后 wget 放弃了20 redirections exceeded
。
这可以通过 OAuth 或其他一些身份验证方法来完成吗?