目次を見る

PythonでGoogle Mapsをスクレイピングする

Google Mapsのスクレイピングには、コーディング、ブラウザエミュレーション、プロキシ、などの知識が必要です。 reCAPTCHAソルバー。 さらに、Googleがダイナミックコンテンツに加えるかもしれない変更に対応する準備も必要です。

First of all, you will need to mimic the real user’s behavior by using browser emulation. Using セレン などのブラウザエミュレータを利用するとよいかもしれません。

Secondly, if you want to keep your office/home IP safe you will need to use プロキシ.だから、他人のIPからウェブサイトをリクエストすることができます。

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ソルバー。

さらに、Googleがコンテンツを変更する可能性がある状況に備える。毎日テストを行うことでそれが可能になります。

Although it might take some time to implement the scraper, it can be built and maintained. Check out this step-by-step tutorial on how to scrape Google Maps using Python and Selenium to learn more: PythonとSeleniumでGoogle Mapsをスクレイピングする方法。

Outscraper PythonパッケージによるGoogle Mapsスクレイピング

Google Mapsをスクレイピングする、よりシンプルで信頼性の高い方法として Outscraper Python ライブラリ.へのアクセスに便利です。 Outscraper API from applications written in the Python language which allows you to use Outscraperのサービス をあなたのコードから削除してください。

をインストールすることから始めることができます。 小包 でアカウントを作成し アウトスクレーパー.

PythonによるGoogle Mapsのスクレイピング

インストール

以下のコマンドを実行して、Outscraper SDKをインストールします(Python 3+が必要です)。

				
					pip install outscraper.
				
			

初期設定

クラスをインポートし、秘密のAPIキーを追加して、Outscraperクライアントを初期化します。APIキーの生成は プロフィールページ.

				
					from outscraper import ApiClient

client = ApiClient(api_key='SECRET_API_KEY').
				
			

使用例

ここでは、検索クエリを使ってGoogle Mapsから場所をスクレイピングする例を紹介します。

				
					#特定の場所にあるビジネスを検索する。
results = client.google_maps_search_v2(['restaurants brooklyn usa'], limit=20, language='en', region='us')

# 2つのクエリで場所をスクラップする
results = client.google_maps_search_v2(
    ['restaurants brooklyn usa', 'bars brooklyn usa'],
    limit=50, # 各クエリごとに場所を制限する
    language='en',
    region='US',
)

# 結果に対して反復処理を行う
for query_places in results:
    for place in query_places:
        print('クエリ:', place['query'])
        print('名前:', 場所['名前'])
        print('電話番号:', 場所['電話番号'])
        print('ウェブサイト:', place['site'])</xmp
				
			

また、Place Idを使用してデータを抽出することも可能です。

				
					# IDで特定の場所のデータを取得する
results = client.google_maps_search_v2(['ChIJrc9T9fpYwokRdvjYRHT8nI4'], language='en')

# 地名IDによるスクラッププレイス
results = client.google_maps_search_v2(
    ["ChIJ8ccnM7dbwokRy-pTMsdgvS4", "ChIJN5X_gWdZwokRck9rk2guJ1M", "ChIJxWLy8DlawokR1jvfXUPSTUE" ]となります。
    limit=1, # 各クエリに含まれるパースの数
)

# 結果に対する反復処理
for query_places in results:
    for place in query_places:
        print('名前:', 場所['名前'])
        print('場所ID:', place['place_id'])</xmp
				
			

Outscraper SDKを今すぐ試す

PythonでGoogle Maps Scrapingを簡単に行うためのOutscraper SDKが公開されています。今ならFree Tierでお試しいただけます。

よくある質問

最も頻繁な質問と回答

Outscraper SDKを使用すると、Google Mapの結果をスクレイピングすることができます。検索クエリや言語などのパラメータを指定し、リクエストを送信してください。

pip install outscraper
from アウトスクレーパー import ApiClient
client = ApiClient(api_key='SECRET_API_KEY')
# Search for businesses in specific locations:
results = client.google_maps_search('restaurants brooklyn usa', limit=20, language='en')

# Get data of the specific place by id
results = client.google_maps_search('ChIJrc9T9fpYwokRdvjYRHT8nI4', language='en')

# Search with many queries (batching)
results = client.google_maps_search([
    'restaurants brooklyn usa',
    'bars brooklyn usa',
], language='en')

Google Mapsのスクレイピングには、コーディング、ブラウザエミュレーション、プロキシ、などの知識が必要です。 reCAPTCHAソルバー。 さらに、Googleがダイナミックコンテンツに加えるかもしれない変更に対応する準備も必要です。

Googleマップはスクレイピングを認めない。しかし、公共データのスクレイピングと抽出は、アメリカ合衆国憲法修正第1条で保護されています。

カテゴリ: API

ユヌス

マーケター、コンテンツライター、カスタマーエクスペリエンスデベロッパー-。 フェイスブック | Linkedin | ツイッター

0コメント

コメントを残す

アバタープレースホルダー