Оглавление

Скраппинг Google Maps на чистом PHP

Хорошее знание кодирования, эмуляции браузера, прокси-серверов и программы reCAPTCHA необходимо для работы с Google Maps. Кроме того, будет полезно, если вы будете готовы работать с любыми изменениями, которые Google может внести в динамический контент.

Вначале вам нужно будет эмулировать поведение реального пользователя с помощью эмуляции браузера. Поэтому, используя Селен или другие эмуляторы браузеров могут быть эффективным вариантом.

Вы должны использовать прокси если вы хотите защитить свой офисный/домашний IP-адрес, таким образом, вы можете запрашивать веб-сайты с IP-адресов других пользователей.

Даже с этим набором инструментов Google может представить вам reCAPTCHA и привязать его к некоторым вашим IP, если вы используете его достаточно часто. Вы можете добавить  Решение проблемы reCAPTCHA если вы не хотите менять IP всякий раз, когда сталкиваетесь с reCAPTCHA.

Кроме того, будьте готовы к тому, что Google может изменить содержание сайта. Этого можно добиться, проводя ежедневные тесты.

Несмотря на то, что внедрение скрепера может занять некоторое время, его можно создать и поддерживать. Чтобы узнать, как скрапировать Google Maps с помощью Python и Selenium, посетите это пошаговое руководство: Как соскребать карты Google с помощью Python и Selenium.

Скраппинг Google Maps с помощью PHP-пакета Outscraper

Более надежным способом соскабливания Google Maps будет использование PHP-библиотека Outscraper. Он обеспечивает удобный доступ к API Outscraper из приложений, написанных на языке PHP, который позволяет использовать Услуги Outscraper из вашего кода.

Вы можете начать с установки пакет и создать учетную запись на Outscraper.

Установка

Композитор

Установите Outscraper SDK через Композитор. Выполните следующую команду:

				
					composer require outscraper/outscraper
				
			

Чтобы использовать привязки, воспользуйтесь функцией Composer автозагрузка:

				
					require_once('vendor/autoload.php');
				
			

Ручная установка

Если вы не хотите использовать Composer, вы можете скачать программу последний выпуск. Затем, чтобы использовать привязку, включите функцию init.php file:

				
					require_once('/path/to/outscraper-php/init.php');
				
			

Инициализация

Инициализируйте клиент Outscraper, импортировав класс и добавив секретный ключ API. Вы можете сгенерировать ключ API на страница профиля.

				
					$client = new OutscraperClient("SECRET_API_KEY");
				
			

Примеры использования

Ниже приведены примеры того, как можно получить информацию о местах из Google Maps с помощью поисковых запросов:

				
					# Search for businesses in specific locations:
$results = $client->google_maps_search_v2(['restaurants brooklyn usa'], limit: 20, language: 'en', region: 'us');

# Scrap Places by Two Queries
$results = $client->google_maps_search_v2(
    ['restaurants brooklyn usa', 'bars brooklyn usa'],
    limit: 50, # limit of palces per each query
    language: 'en',
    region: 'US',
);

# Iterate over the results
foreach ($results as &$query_places) {
    foreach ($query_places as &$place) {
        print($place['query']);
        print($place['name']);
        print($place['phone']);
        print($place['site']);
    }
};
				
			

Также можно извлечь данные с помощью Place Id:

				
					# Get data of the specific place by id
$results = $client.google_maps_search_v2(['ChIJrc9T9fpYwokRdvjYRHT8nI4'], language: 'en');

# Scrap Places by Place Ids
$results = $client->google_maps_search_v2(
    ["ChIJ8ccnM7dbwokRy-pTMsdgvS4", "ChIJN5X_gWdZwokRck9rk2guJ1M", "ChIJxWLy8DlawokR1jvfXUPSTUE"],
    limit: 1, # limit of palces per each query
);

# Iterate over the results
foreach ($results as &$query_places) {
    foreach ($query_places as &$place) {
        print($place['query']);
        print($place['place_id']);
    }
};
				
			

Попробуйте Outscraper SDK сейчас

SDK Outscraper доступен для того, чтобы вы могли легко делать Google Maps Scraping с помощью PHP. Вы можете попробовать его прямо сейчас, воспользовавшись бесплатным уровнем.

Часто Задаваемые Вопросы

Наиболее частые вопросы и ответы

Вы можете соскабливать результаты Google Map с помощью Outscraper SDK. Укажите поисковые запросы, язык и другие параметры и отправьте запрос.

composer require outscraper/outscraper
require_once('vendor/autoload.php');
$client = новый OutscraperClient("SECRET_API_KEY");
# Поиск предприятий в определенных местах:
$results = $client->google_maps_search_v2(['restaurants brooklyn usa'], limit: 20, language: 'en', region: 'us');
# Места лома по двум запросам
$results = $client->google_maps_search_v2(
['restaurants brooklyn usa', 'bars brooklyn usa'],
ограничение: 50, # ограничение количества мест для каждого запроса
язык: 'en',
регион: 'США',
);
# Итерация результатов
foreach ($results as &$query_places) {
foreach ($query_places as &$place) {
print($place['query']);
print($place['name']);
print($place['phone']);
print($place['site']);
}
};

Скраппинг Google Maps требует хорошего знания кодирования, эмуляции браузера, прокси и Решение проблемы reCAPTCHA. Кроме того, вы должны быть готовы к изменениям, которые Google может внести в динамический контент.

Карты Google запрещают скрапбукинг. Хотя скраппинг и извлечение публичных данных защищены Первой поправкой к Конституции США.

Категории: API

Юнус

Маркетолог, писатель контента, разработчик клиентского опыта - Facebook | Linkedin | Твиттер

0 Комментарии

Добавить комментарий

Заполнитель аватара