这很棘手。我想使用 curl、wget 或任何其他工具登录提供登录表单的 SSL 网站。然后我想访问该域中的几个链接并获取某些图像。
我让它在 bash 中工作:
curl -c /tmp/cookie.txt -d "login=username&password=passw&send=submit" https://URI
稍后使用 cookie
curl -b /tmp/cookie.txt https://URI
诀窍在于您必须将凭证提交到action=
html 表单字段的地址。
我现在面临的另一个问题是,这不会写入任何图像,因为图像的 URL 是由某些 Servlet URI 构建的:
<img src="URI/servlet/manyParametersWith?And=AndLotsOf&">
答案1
尝试使用 Python 和 mechanize(也适用于 Perl)。你可以这样做:
import mechanize
br=mechanize.Browser()
br.open('http://www.yourfavoritesite.com')
br.select_form(nr=0) #check yoursite forms to match the correct number
br['Username']='Username' #use the proper input type=text name
br['Password']='Password' #use the proper input type=password name
br.submit()
br.retrieve('https://www.yourfavoritesite.com/pagetoretrieve.html','yourfavoritepage.html')
答案2
好的,写入图像的唯一可能性是将其显示在浏览器中,例如通过 php echo,然后通过 php 将其写入磁盘。一些用户报告说这可能有效。