Я должен найти число индексируемых страниц в Google для определенного доменного имени, как мы делаем это через Сценарий PHP?
Так,
foreach ($allresponseresults as $responseresult)
{
$result[] = array(
'url' => $responseresult['url'],
'title' => $responseresult['title'],
'abstract' => $responseresult['content'],
);
}
что я добавляю для предполагаемого количества результатов и как я делаю это? я знаю, что это (estimatedResultCount), но как я добавляю это? и я называю заголовок, например, этим путем: $result ['заголовок'] поэтому, как получить число и как распечатать число?
Спасибо :)
Я думаю, что было бы лучше, если бы Гугл использовал их RESTful Search API. Смотрите этот URL для примера вызова:
http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q=site:stackoverflow.com&filter=0
(Вас интересует значение estimatedResultCount
)
В PHP вы можете использовать file_get_contents
для получения данных и json_decode
для их разбора.
Документацию можно найти здесь:
Предупреждение: Следующий код не проверяет реакцию на ошибку!
function getGoogleCount($domain) {
$content = file_get_contents('http://ajax.googleapis.com/ajax/services/' .
'search/web?v=1.0&filter=0&q=site:' . urlencode($domain));
$data = json_decode($content);
return intval($data->responseData->cursor->estimatedResultCount);
}
echo getGoogleCount('stackoverflow.com');
Количество результатов для сайта : yourdomainerher.com
- stackoverflow.com имеет 830k
Вы будете загружаться бит. У вас будет полученный HTML, хранящийся в переменной , обратите внимание, что это непросто и очень грубый пример. Вам будет лучше разбирать HTML с преданным парсером или сопоставить линию с регулярными выражениями. http://www.google.com/search?q=domaingoes .com
с curl, а затем анализируйте файл, ищете результаты
$ HTML
, а затем скажи что-то вроде $arr = explode('<p id="resultStats"'>, $html);
$bottom = $arr[1];
$middle = explode('</p>', $bottom);