[英]Access website - WWW::Mechanize
我嘗試使用下面的代碼來獲取網站htm源,它的工作原理。 但是,當我使用以下代碼訪問網站http://reserve.apple.com/WebObjects/ProductReservation.woa/wa/reserveProduct時,我無法得到結果。 但是,我可以通過正確使用瀏覽器來訪問此頁面。 你能給我一些解決這個問題的提示或技巧嗎? 謝謝。
#!/usr/bin/perl
use strict;
use warnings;
# create a new browser
use WWW::Mechanize;
my $browser = WWW::Mechanize->new();
# tell it to get the main page
my $sURL = 'http://www.apple.com';
#my $sURL = 'http://reserve.apple.com/WebObjects/ProductReservation.woa/wa/reserveProduct';
$browser->get($sURL);
print $browser->content;
exit(0);
這是一種奇怪的行為,但是您想要檢索的URL的站點需要定義以下標題:Accept,Accept-Encoding,Accept-Language,Accept-Charset,Cookie。
否則服務器根本不響應。
您只需在“獲取”請求之前插入以下代碼即可輕松完成此操作:
$browser->add_header(
"Accept" => "",
"Accept-Encoding" => "",
"Accept-Language" => "",
"Accept-Charset" => "",
"Cookie" => ""
);
您可以插入一些實際值,而不是空字段,但這也適用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.