В этом посте мы научимся парсить предложения автозаполнения Google.

Требования:

Прежде чем мы начнем, мы должны установить все, что нам может понадобиться в этом руководстве, чтобы двигаться вперед.

  1. Узел JS
  2. Юнирест Дж. С.
  3. Чирио ДжейСи

Поэтому перед запуском настройте свой проект Node JS, а затем установите оба пакета — Unirest JS и Cheerio JS. Вы можете установить оба пакета по вышеуказанной ссылке.

Цель:

Мы будем стремиться очистить предложения автозаполнения кофе.

Процесс:

Теперь все вещи, которые нам понадобятся для подготовки нашего скребка, установлены. Мы будем использовать библиотеку npm Unirest JS, чтобы сделать запрос на получение нашего целевого URL-адреса, чтобы мы могли получить наши необработанные данные HTML. Затем мы будем использовать Cheerio JS для анализа извлеченных данных HTML.

Мы настроим таргетинг на этот URL:

https://www.google.com/complete/search?&hl=en&q=coffee&gl=us&client=chrome

Скопируйте этот URL-адрес в свой браузер и нажмите Enter. Вы увидите текстовый файл, загружаемый в вашем браузере, введя этот URL-адрес в браузере. Откройте этот файл в соответствующем редакторе кода.

Теперь мы сначала преобразуем эту строку JSON в объект и получим соответствующие данные, которые нам нужны.

Вы можете скопировать этот код по следующей ссылке: https://github.com/Darshan972/GoogleScrapingBlogs/blob/main/GoogleAutocompleteScraper.js

Результат:

[
  { value: 'coffee near me', relevance: 1250, type: 'QUERY' },
  { value: 'coffee shops near me', relevance: 650, type: 'QUERY' },
  { value: 'coffee shop', relevance: 601, type: 'QUERY' },
  { value: 'coffee table', relevance: 600, type: 'QUERY' },
  { value: 'coffee maker', relevance: 553, type: 'QUERY' },
  { value: 'coffee bean', relevance: 552, type: 'QUERY' },
  { value: 'coffee grinder', relevance: 551, type: 'QUERY' },
  { value: 'coffee meets bagel', relevance: 550, type: 'QUERY' }
]
1300

С Google Autocomplete API

Если вы хотите легко очистить результаты автозаполнения Google, не создавая парсер, поскольку иногда сбор данных может занимать много времени, вы можете попробовать этот API.

Серпдог | Google Search API также предоставляет 100 бесплатных поисков в месяц, и если вы хотите увеличить свою квоту запросов, вы также можете купить платные планы.

Пример кода запроса:

const axios = require('axios');
axios.get('https://api.serpdog.io/autocomplete?api_key=APIKEY&q=football&gl=us')
  .then(response => {
    console.log(response.data);
  })
  .catch(error => {
    console.log(error);
  });

Полученные результаты:

{
  "meta": {
    "api_key": "APIKEY",
    "q": "football",
    "gl": "us"
  },
  "suggestions": [
    {
      "value": "football cleats",
      "relevance": 601,
      "type": "QUERY"
    },
    {
      "value": "football games",
      "relevance": 600,
      "type": "QUERY"
    },
    {
      "value": "football wordle",
      "relevance": 555,
      "type": "QUERY"
    },
    {
      "value": "football today",
      "relevance": 554,
      "type": "QUERY"
    },
    {
      "value": "football gloves",
      "relevance": 553,
      "type": "QUERY"
    },
    {
      "value": "football field",
      "relevance": 552,
      "type": "QUERY"
    },
    {
      "value": "football movies",
      "relevance": 551,
      "type": "QUERY"
    },
    {
      "value": "football positions",
      "relevance": 550,
      "type": "QUERY"
    }
  ],
  "verbatim_relevance": 1300
}

Заключение

В этом уроке мы научились очищать результаты предложений автозаполнения Google. Если у вас есть какие-либо вопросы, не стесняйтесь спрашивать меня в комментариях. Подпишись на меня в Твиттере". Спасибо за прочтение!

Дополнительные ресурсы

  1. Парсер отзывов Google Maps
  2. Скрапер новостей Google
  3. Скребок изображений Google
  4. Парсер результатов органического поиска Google

Автор

Я Даршан, основатель serpdog.io. Я люблю парсить сайты и писать о них блоги.