目次を見る

ピュアPHPでGoogle Mapsスクレイピング

Google Mapsのスクレイピングには、コーディング、ブラウザエミュレーション、プロキシ、reCAPTCHAソルバーに関する十分な知識が必要です。さらに、Googleが動的コンテンツに加える可能性のある修正に対応できるように準備しておくとよいでしょう。

最初は、ブラウザのエミュレーションによって、実際のユーザーの動作を再現する必要があります。そのため セレン や他のブラウザのエミュレータを利用するのも効率的な方法かもしれません。

を使用する必要があります。 プロキシ ご自身のIPアドレスを保護したい場合、他のユーザーのIPからウェブサイトを要求することができます。

このような一連のツールを使っても、十分な使用量があれば、GoogleはあなたにreCAPTCHAを提示し、あなたのIPのいくつかにそれをバインドするかもしれません。を追加することができます。  reCAPTCHAソルバー もし、reCAPTCHAに遭遇するたびにIPを変更したくない場合は、以下のようにします。

これに加えて、Googleがコンテンツを変更する可能性に備えること。それは、毎日テストを行うことで実現できる。

スクレイパーの実装には時間がかかるかもしれませんが、構築とメンテナンスは可能です。PythonとSeleniumを使ってGoogle Mapsをスクレイピングする方法については、このステップバイステップのチュートリアルをご覧ください。 PythonとSeleniumでGoogle Mapsをスクレイピングする方法。

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

Google Mapsをより強固にスクレイピングする方法としては Outscraper PHPライブラリ.へのアクセスに便利です。 Outscraper API を使用することができるPHP言語で書かれたアプリケーションから。 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');
				
			

初期設定

クラスをインポートし、秘密のAPIキーを追加して、Outscraperクライアントを初期化します。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を今すぐ試す

PHPで簡単にGoogle Maps ScrapingができるOutscraper SDKを公開しました。今ならFree Tierでお試しいただけます。

よくある質問

最も頻繁な質問と回答

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

composer require outscraper/outscraper
require_once('vendor/autoload.php')。
$client = new OutscraperClient("SECRET_API_KEY");
# 特定の場所にある企業を検索します。
$results = $client->google_maps_search_v2(['restaurants brooklyn usa'], limit: 20, language: 'en', region: 'us');
# スクラッププレイス by 2クエリ
$results = $client->google_maps_search_v2()
[レストラン・ブルックリン・アメリカ', 'バー・ブルックリン・アメリカ']。
limit: 50, # 各クエリのパース数制限
言語: 'en',
region: 'US',
);
# 結果の反復処理
foreach ($results as &$query_places) {。
foreach ($query_places as &$place) { { $query_places は、$place と同じです。
print($place['query'])。
print($place['name'])とします。
print($place['phone'])。
print($place['site'])。
}
};

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

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

カテゴリー API

ユヌス

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

0のコメント

コメントを残す

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