我尝试使用curl检索一个html页面。登录网站后,使用以下命令:
curl -o out.html -L -b cco.txt -c cco.txt -d "site=it&redirect_url=aHR0cDovL2l0LmFkdmZuLmNvbS9wLnBocD9waWQ9bW9u&login_username=NAME&login_password=PWWW&login_submit=Accedi" https://secure.advfn.com/login/secure我得到一个代码为html5的网页,但它没有处理任何数据。
如何获取数据,如浏览器快照?没有图像(jpg,png...),而是一个文本文件。
发布于 2015-02-07 15:25:33
我找到了我的问题的答案。简单地说,curl是错误的。我使用PhantomJS和下面的简单代码:
var page = require('webpage').create(),
server = 'https://secure.advfn.com/login/secure',
data = 'site=it&redirect_url=aHR0cDovL2l0LmFkdmZuLmNvbS9wLnBocD9waWQ9bW9u&login_username=bl&login_password=PPPPPPP&login_submit=Accedi';
page.open(server, 'post', data, function (status) {
if (status !== 'success') {
console.log('Unable to post!');
} else {
console.log(page.content);
}
page.render('example.png'); //optional
phantom.exit();
});然后,它可以在控制台上运行它:
bl@edesktop $ phantomjs --debug=true --ssl-protocol=any --cookies-file=cook.txt script.js > page获取渲染页面和包含所有所需数据的文本文件,从读取到解析。
https://stackoverflow.com/questions/28363723
复制相似问题