我试图通过反复获取页面来获得Facebook用户的(公共)朋友。 (由于刷新让页面上显示不同的朋友)
这是我的代码:
our @header = ('Referer'=>'http://www.facebook.com', 'User-Agent'=>$user_agent,'Pragma'=>'no-cache','Max-age'=>'0');
our $cookie_jar = HTTP::Cookies->new(file=>'secret/fbkCookies.dat',autosave=>1, ignore_discard=>1);
our $browser = LWP::UserAgent->new; #initialize browser
$browser->cookie_jar($cookie_jar);
# Login
...
# Fetch
until(got_all_friends){
$response = $browser->get("https://www.facebook.com/friends.php?id=$uid",@header);
# Parse and get friends in the page
# Merge and save current friends and new ones
}
但是在循环中,即使使用no-cache
和max-age=0
,我也会始终获得相同的内容。
我需要定义任何其他标头,还是其他方法?
参考
LWP中的缓存控制标头
http://computer-programming-forum.com/53-perl/4cf2b945b357ede7.htm
(中文:登录Facebook)
http://job.achi.idv.tw/2011/04/25/%E5%B0%8Dfacebook%E4%BD%BF%E7%94%A8perl-part-i-login/