جدول المحتويات

Google Maps Scraping In Pure Python​

Scraping Google Maps requires good knowledge of coding, browser emulation, proxies, and a مُحلل reCAPTCHA. بالإضافة إلى ذلك، يجب أن تكون مستعدًا أيضًا للتعامل مع التغييرات التي قد تجريها جوجل على محتواها الديناميكي.

First of all, you will need to mimic the real user’s behavior by using browser emulation. Using السيلينيوم or other browser emulators might be a good solution.

Secondly, if you want to keep your office/home IP safe, you will need to use الوكلاء. So you can request websites from other people’s IPs.

Even with that set of tools, once you have some good usage, Google might show you reCAPTCHA and bind it to some of your IPs. If you do not want to change IPs every time you see a reCAPTCHA, you can add a مُحلل reCAPTCHA.

Additionally, be prepared for situations when Google might change its content. You can do it by running daily tests.

Although it might take some time to implement the scraper, it can be built and maintained.

If you are still deciding whether that maintenance work is worth keeping in-house, read our guide on whether to build your own Google Maps scraper or use a managed service.

Check out this step-by-step tutorial on how to scrape Google Maps using Python and Selenium to learn more: كيفية استخراج البيانات من خرائط جوجل باستخدام لغة بايثون وبرنامج سيلينيوم.

Google Maps Scraping With Outscraper Python Package

A more simple and reliable way of scraping Google Maps will be using the Outscraper python library. It provides convenient access to the واجهة برمجة التطبيقات Outscraper from applications written in the Python language, which allows you to use خدمات Outscraper من الكود الخاص بك.

يمكنك البدء بتثبيت الطرد وإنشاء حساب على Outscraper.

Google Maps Scraping in Python

التركيب

Install the Outscraper SDK by running the following command (Python 3+ is required):

				
					pip install outscraper
				
			

التهيئة

قم بتهيئة عميل Outscraper عن طريق استيراد الفئة وإضافة مفتاح API السري الخاص بك. يمكنك إنشاء مفتاح API على صفحة الملف الشخصي.

				
					from outscraper import ApiClient

client = ApiClient(api_key='SECRET_API_KEY')
				
			

أمثلة على الاستخدام

فيما يلي أمثلة على كيفية استخراج بيانات المواقع من خرائط جوجل باستخدام استعلامات البحث:

				
					# 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
for query_places in results:
    for place in query_places:
        print('query:', place['query'])
        print('name:', place['name'])
        print('phone:', place['phone'])
        print('website:', 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
for query_places in results:
    for place in query_places:
        print('name:', place['name'])
        print('place_id:', place['place_id'])
				
			

جرب Outscraper SDK الآن

The Outscraper SDK is available for you to easily do Google Maps Scraping with Python. You can try it right now with a Free Tier.

التعليمات

الأسئلة والأجوبة الأكثر شيوعًا

يمكنك كشط نتائج خرائط Google باستخدام Outscraper SDK. حدد استعلامات البحث واللغة والمعلمات الأخرى، وأرسل طلبك.

pip install outscraper
من outscraper import ApiClient
client = ApiClient(api_key='SECRET_API_KEY')
# Search for businesses in specific locations:
النتائج = client.google_maps_search('restaurants brooklyn usa', limit=20, language='en')

# Get data of the specific place by id
النتائج = client.google_maps_search('ChIJrc9T9fpYwokRdvjYRHT8nI4', language='en')

# Search with many queries (batching)
النتائج = client.google_maps_search([
    'restaurants brooklyn usa',
    'bars brooklyn usa',
], language='en')

يتطلب مسح خرائط جوجل معرفة جيدة بالترميز، ومحاكاة المتصفح، والبروكسيات، و مُحلل reCAPTCHA. بالإضافة إلى ذلك، يجب أن تكون مستعدًا أيضًا للتعامل مع التغييرات التي قد تجريها جوجل على محتواها الديناميكي.

لا تسمح خرائط جوجل بالكشط. على الرغم من أن كشط واستخراج البيانات العامة محمي بموجب التعديل الأول لدستور الولايات المتحدة.