如何獲取谷歌搜索結果的網址?(PHP)如何解析谷歌搜索結果中的網址?
(我用Zend_Gdata_Gbase對於GET搜索谷歌的結果,而不是的DomDocument/htmlsimpleparser因爲它看來,我認爲Zend_Gdata_Gbase解析谷歌的結果特地來完成。 ,如果我錯了,我的選擇,請寫。)
我函數來獲取谷歌搜索結果爲'雅虎'或其他查詢搜索字符串: (該函數獲得應該有詞'雅虎'的搜索結果的飼料,但是當我使用prin_t($飼料)我沒有看到網址對於每個結果)
<?php
function queryGoogleSearch($queryString='yahoo'){
$service = new Zend_Gdata_Gbase();
$query = $service->newSnippetQuery();
$query->setBq('['.$queryString.']');
$query->setOrderBy('modification_time');
$query->setSortOrder('descending');
$query->setMaxResults('4');
$feed = $service->getGbaseSnippetFeed($query);
return $feed;
}
print_r(queryGoogleSearch());
?>
我得到4個第一url結果(當我在谷歌手動搜索):
www.yahoo.com,mail.yahoo.com,search.yahoo.com,maps.yahoo.com
但我做不到當我打印$ feed變量時找不到它們。
請問我應該更改或添加inqueryGoogleSearch()函數? (或其他更好的代碼)
感謝
的問題謝謝!但我如何使用自定義搜索,如果我需要進行大量的搜索,而不是100或更多一點? (「API每天提供100個搜索查詢」http://code.google.com/apis/customsearch/v1/overview.html) – Yosef 2010-11-07 15:15:30
如果您需要更多信息,您可以增加它。你將需要一個有效的理由。它看起來像谷歌正在從websearch api開始追蹤更多。對不起,我不能給你一個簡單的答案,但實際上沒有其他辦法。即使您使用cURL使用代理來獲取數據並將其解析出來,Google仍然會阻止您。 – Matt 2010-11-07 15:56:41
非常感謝你! (你確定谷歌會阻止我,如果我將使用cURL +代理?) – Yosef 2010-11-07 17:03:50