2

如何获取谷歌搜索结果网址?

(我使用 Zend_Gdata_Gbase 来获取搜索 google 结果,而不是 DomDocument/htmlsimpleparser,因为它看起来 Zend_Gdata_Gbase 专门用于解析 google 结果。如果我的选择有误,请写。)

我的函数来获取“雅虎”或其他查询搜索字符串的谷歌搜索结果:( 该函数获取一个应该有“雅虎”搜索结果的提要,但是当我使用 prin_t($feed) 时,我看不到 url每个结果)

<?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 结果(当我在 google 中手动搜索时):

www.yahoo.com、mail.yahoo.com、search.yahoo.com、maps.yahoo.com

但是当我打印 $feed 变量时找不到它们。

请问我应该更改或添加什么 inqueryGoogleSearch() 功能?(或其他更好的代码)

谢谢

4

2 回答 2

5

您是否尝试搜索 google.com。看起来该课程适用于 Google Base,而不是 google.com 搜索引擎。http://base.google.com/support/bin/answer.py?hl=en&answer=59260

你可能想要这个:http ://code.google.com/apis/customsearch/v1/overview.html 他们最近刚刚改变了这个。自 11 月 1 日起,旧的 google 搜索 API 现已弃用。自定义搜索是新的 API。

在没有 Zend 的情况下使用起来非常简单。

http://code.google.com/apis/customsearch/v1/using_rest.html#WorkingResults

PHP中有一个JSON解码器。 http://php.net/manual/en/function.json-decode.php

希望有帮助!

于 2010-11-07T14:18:31.387 回答
0

google 搜索 URL 非常简单,出于不同的原因,我在这里记录了它。当您搜索某些内容时,例如“博客”,您被发送到的页面是http://www.google.co.uk/search?q=blog。之后的那一点?被称为包含我的搜索的查询字符串(在本例中为 q=blog)。修改这将修改谷歌搜索字符串,并返回适当的结果。

至于 PHP 你只需要添加到http://www.google.co.uk/search?q=的末尾

于 2010-11-01T15:25:21.010 回答