Krótko mówiąc, szukam sposobu, aby to zrobić:Czy przeczytać wyniki wyszukiwania Google w tablicy PHP?
$results_array = google("search terms"); // returns array of URLs
Tak więc, na przykład, jeśli moje wyszukiwane hasła były "filmy cat" my $ results_array [0] może być URL Youtube, i $ result_array 1 może być na Vimeo.
Widziałem interfejs API wyszukiwarki niestandardowej Google, ale wszystkie one wymagają złożonych transformacji JSON, ATOM, REST lub jakiegoś innego systemu, który jest zbyt skomplikowany dla tego, co próbuję zrobić.
Czy istnieją jakieś proste rozwiązania?
EDIT: Znalazłem go, dzięki innym poście
Dzięki this post byłem w stanie zrozumieć. W skrócie, po prostu stosuje się następującą:
$results = json_decode(file_get_contents(
'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q='.
urlencode($search)));
echo $results->responseData->results[$resultNumber]->url;
Jestem nieco zaskoczony i rozczarowany przez downvotes - wydaje się być dość częste pytanie o istocie dość prosta odpowiedź. Dotyczy to JSON, ale jest całkowicie przezroczysty dla użytkownika. Być może lepszym rozwiązaniem będzie:
function google($query) {
$results = json_decode(file_get_contents(
'http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q='.
urlencode($search)));
return $results->responseData->results
}
W jaki sposób JSON jest zbyt skomplikowany? Wygląda na to, że jest to pierwszy wybór do twojej realizacji. Zdecydowanie mniej skomplikowane niż coś takiego jak parsowanie wyników wyszukiwania HTML ... –
Google nie lubi niczego, co próbuje ominąć ich api, więc jeśli spróbujesz zrobić bezpośrednie żądania i przeanalizować wyniki - Twój host może zostać zbanowany. – Cheery