2012-05-02 8 views
0

私はIRCで使用する簡単なボットと私の友人を書いています。 このモジュールが見つかりましたが、何らかの理由で、私が例を辿っても実際に検索することはできません。
モジュールは私のコードをオフに基づいていますhere.
例を見ることができますが私の知る限り、私はどんなミスをしていないよ、言うことができるようにhere.404 Net:Googleを使用しているエラー

を見ることができます。

デバッグを有効にすると、この出力が表示されます(デバッグを有効にして最後の行を取得するだけです)。

<p><b>404.</b> <ins>Thatâs an error.</ins> 
<p>The requested URL <code>/search/beta2</code> was not found on this server. 
<ins>Thatâs all we know.</ins> 
404 Not Found at /usr/lib/perl5/vendor_perl/5.8.8/SOAP/Lite.pm line 3720 

マイコード;私は、エラーメッセージが出ていなぜ

$msg =~ s/^google//g; # Get query 
my $google = Net::Google->new(key => GOOGLE_API_KEY, debug => 1); # Create search instance 
my $search = $google->search(); # Build query 
$search->query($msg); 
$search->starts_at(0); 
$search->max_results(100); 
$search->filter(0); 

$search->results(); # Search google 
my $random = int(rand(100)); 
my $count = 0; 

foreach my $result (@{$search->results()}) 
{ 
    if ($count == $random) 
    { 
     $irc->yield(privmsg => CHANNEL, $result->title() || "No Title"); 
     $irc->yield(privmsg => CHANNEL, $result->URL()); 
    } 
    $count++; 
} 

任意のアイデアですか?
私はuse Net::Google;use SOAP::Lite;を持っています。私はSOAPディレクトリをチェックしました。Lite.pmは間違いなくそこにあります... googleは役に立たなかったので、少し損失があります。

+0

モジュール - 2005年、記事がある場合もあります。おそらくAPIが変更されました。 – askovpen

+0

それは正しいです。 SOAP APIは本当に古いです。これまでずっと推奨されておらず、完全に削除されています。この事実に関する情報はdevelopers.google.comでもう見つけられません。 – daxim

+0

よろしいですか? askovpenと@daximに感謝します。私はPerlを初めて熟知しています。私は通常、javaを使用していて、何かが廃止されたときには、ほとんどの場合、docsはいつも言っています。 – FizzBuzz

答えて

0
use Google::Search; 
my $search = Google::Search->Web(query => "rock"); 
while (my $result = $search->next) 
{ 
    print $result->rank, " ", $result->uri, " ",$result->title."\n"; 
} 
関連する問題