从需要身份验证的页面下载网页源

时间:2013-10-15 13:15:37

标签: linux shell http curl wget

我想从一个需要身份验证的页面下载一个网页源代码,在Linux机器上使用shell脚本或类似的东西(如Perl,Python等)。

我尝试使用wget和curl,但是当我传递URL时,正在下载的源代码是针对要求我提供凭据的页面。 Firefox和Chrome上已经打开了相同的页面,但我不知道如何重新使用此会话。

基本上我需要做的是定期在此页面上运行刷新,并在源代码中查找grep以获取一些信息。如果我找到了我要找的东西,我会触发另一个脚本。

- 编辑 -

Tks @Alexufo。我设法让它以这种方式运作:

1 - 下载Firefox插件以允许我将cookie保存在TXT文件中。我使用了这个插件:https://addons.mozilla.org/en-US/firefox/addon/export-cookies/

2 - 登录我想要的网站,并保存了cookie。

3 - 使用wget:

wget --load-cookies=cookie.txt 'http://my.url.com' -O output_file.txt

4 - 现在页面源代码在output_file.txt中,我可以解析我想要的方式。

2 个答案:

答案 0 :(得分:0)

机械化(http://mechanize.rubyforge.org/)可以做到这一点。我正在使用它(一起)与Ruby 2.0.0完全相同。

答案 1 :(得分:0)

CURL应该适用于任何地方。

1)做第一次自动化响应。保存厨师。 2)当你尝试第二个响应来获取源页面代码时使用cookes。

更新: Wget应该像curl一样使用post autorization wget with authentication update2:http://www.httrack.com/