2009-11-23 5 views
-1

모든 키워드에 대한 Google 검색 결과에 표시된 검색 완료 만 검색하려고합니다. 내가 CURL을 사용하지만 검색 결과 페이지를 검색하는 데 실패했습니다Google 키워드 검색 완료를 검색하는 간단한 PHP 스크립트

- 예를 들어

http://www.google.com/#hl=en&q=google+keyword+search

에 대한 검색 완료 48,400,000 (약 48,400,000 구글 키워드 검색의 결과 10 일)입니다.

도움을 주시면 감사하겠습니다.

+0

확실하게 금지되어 있습니다. – powtac

답변

8

복잡한 작업을 수행 할 필요가 거의 없습니다.

그냥

$search = 'google keyword search'; 
$results = json_decode(file_get_contents('http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=' . urlencode($search))); 

echo $results->responseData->cursor->estimatedResultCount; 
+0

좋아 - 물어볼 게. 이 대답은 거의 1 년이되었고 갑자기 투표가 종료 되었습니까? API가 변경되었지만이 답변이 오래 되었습니까? 너를 내버려 둬라. –

+1

3 년 후, 매력처럼 작동하여 어제 반나절을 보냈습니다. 해결책을 찾고이 하나가 승자였습니다. – Yaroslav

+0

Google 웹 검색 API를 더 이상 사용할 수 없습니다. Google 맞춤 검색 API (https://developers.google.com/custom-search/)로 이동하십시오 – Collins

-2

첫째, 당신이 게시 된 링크 해시 값은 요청 URI의 일부 적이 없기 때문에 그냥 google.com을 얻을 것이다, 잘못된 자신의 검색 API 사용합니다. 둘째, Google은 크롤러가 /search에서 robots.txt로 액세스하는 것을 차단합니다. http://www.google.com/search?hl=en&q=google+keyword+search

CURL이주의를 기울이든 그렇지 않든 나는 모른다. 그러나 Google이 알 수없는 출처로부터 액세스를 차단할 가능성이 큽니다. 나는 당신이 웹 브라우저와 일치하도록 사용자 에이전트를 설정할 수 있다고 생각하지만, 그것은 속임수 일뿐입니다 ...

+0

링크가 작동합니다. 또한 컬은 robots.txt에 관심을 기울이지 않습니다. 이는 클라이언트의 재량에 달려 있습니다. 유효한 사용자 에이전트가 요청을 할 필요는 없지만, IP를 조금 더 오래 사용하지 못하게 할 수는 있습니다. –