Оглавление
Скраппинг 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.
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 запрещают скрапбукинг. Хотя скраппинг и извлечение публичных данных защищены Первой поправкой к Конституции США.
0 Комментарии