2016-05-04 11 views
1

詳細な質問を投稿することをお勧めします。どんな考えや指導もありがとうございます。Googleマップ検索とGoogleマップの相違点api

基本的に、私はAPIリクエストから同じデータをすべて取得しようとしていますが、これは正常なgoogle maps検索から得られたものです。

Google Mapsで「トラクターサプライco brentwood tn」を検索すると、この豊富な結果が得られ、ビジネスの詳細や画像がたくさんあります。私はフォーラムに新しいですし、ドン」ので//:私がhttpsの代わりに、この(楕円などのGoogle APIのジオコード検索を行う場合 google maps search result

を(私が探している完全な詳細を表示するには、このリンクをクリックしてください)まだ複数のリンク投稿の担当者がいる):

... maps.googleapis.com/maps/api/geocode/xml?address=TRACTOR+SUPPLY+COMPANY+(HQ)+BRENTWOOD+TN & key = mykey

私はこの応答を取得:

<?xml version="1.0" encoding="UTF-8"?> 
<GeocodeResponse> 
<status>OK</status> 
<result> 
    <type>locality</type> 
    <type>political</type> 
    <formatted_address>Brentwood, TN, USA</formatted_address> 
    <address_component> 
    <long_name>Brentwood</long_name> 
    <short_name>Brentwood</short_name> 
    <type>locality</type> 
    <type>political</type> 
    </address_component> 
    <address_component> 
    <long_name>Williamson County</long_name> 
    <short_name>Williamson County</short_name> 
    <type>administrative_area_level_2</type> 
    <type>political</type> 
    </address_component> 
    <address_component> 
    <long_name>Tennessee</long_name> 
    <short_name>TN</short_name> 
    <type>administrative_area_level_1</type> 
    <type>political</type> 
    </address_component> 
    <address_component> 
    <long_name>United States</long_name> 
    <short_name>US</short_name> 
    <type>country</type> 
    <type>political</type> 
    </address_component> 
    <geometry> 
    <location> 
    <lat>36.0331164</lat> 
    <lng>-86.7827772</lng> 
    </location> 
    <location_type>APPROXIMATE</location_type> 
    <viewport> 
    <southwest> 
    <lat>35.9325590</lat> 
    <lng>-86.8698999</lng> 
    </southwest> 
    <northeast> 
    <lat>36.0447090</lat> 
    <lng>-86.6868770</lng> 
    </northeast> 
    </viewport> 
    <bounds> 
    <southwest> 
    <lat>35.9325590</lat> 
    <lng>-86.8698999</lng> 
    </southwest> 
    <northeast> 
    <lat>36.0447090</lat> 
    <lng>-86.6868770</lng> 
    </northeast> 
    </bounds> 
    </geometry> 
    <partial_match>true</partial_match> 
    <place_id>ChIJ41xJuq57ZIgRkN_2gzhAfTU</place_id> 
</result> 
</GeocodeResponse> 

同じデータがいくつかありますが、すべてではありません。それはまた、 "placeid"を提供します。だから私はそれを引くと、このようなplaceidに基づいて、「詳細」検索を行う場合:

... maps.googleapis.com/maps/api/place/details/xml?placeid=ChIJ41xJuq57ZIgRkN_2gzhAfTU &キー= mykeyを

私はそれが一般的なplaceidではなく、この会社に固有のものを使用しているように思える。この結果を得る:

<?xml version="1.0" encoding="UTF-8"?> 
<PlaceDetailsResponse> 
<status>OK</status> 
<result> 
    <name>Brentwood</name> 
    <vicinity>Brentwood</vicinity> 
    <type>locality</type> 
    <type>political</type> 
    <formatted_address>Brentwood, TN, USA</formatted_address> 
    <address_component> 
    <long_name>Brentwood</long_name> 
    <short_name>Brentwood</short_name> 
    <type>locality</type> 
    <type>political</type> 
    </address_component> 
    <address_component> 
    <long_name>Williamson County</long_name> 
    <short_name>Williamson County</short_name> 
    <type>administrative_area_level_2</type> 
    <type>political</type> 
    </address_component> 
    <address_component> 
    <long_name>Tennessee</long_name> 
    <short_name>TN</short_name> 
    <type>administrative_area_level_1</type> 
    <type>political</type> 
    </address_component> 
    <address_component> 
    <long_name>United States</long_name> 
    <short_name>US</short_name> 
    <type>country</type> 
    <type>political</type> 
    </address_component> 
    <geometry> 
    <location> 
    <lat>36.0331164</lat> 
    <lng>-86.7827772</lng> 
    </location> 
    <viewport> 
    <southwest> 
    <lat>35.9325590</lat> 
    <lng>-86.8698999</lng> 
    </southwest> 
    <northeast> 
    <lat>36.0447090</lat> 
    <lng>-86.6868770</lng> 
    </northeast> 
    </viewport> 
    </geometry> 
    <url>https://maps.google.com/?q=Brentwood,+TN,+USA&amp;ftid=0x88647baeba495ce3:0x357d403883f6df90</url> 
    <icon>https://maps.gstatic.com/mapfiles/place_api/icons/geocode-71.png</icon> 
    <reference>CnRvAAAA7imTJVU7NIR2ZHUHP72h0JegnJJsPWEJYswpzCe_UTTGRmcbEjFCC-it8-GKmaMJiIR_oNShYTUTWGrdJkwbmKws1JY8iX_yItYHaiiKuDLZRDfgF8mK0aACDfjfsVJzJFoJsTGHhrUQcD9KtzrvJBIQK5_0vxAqFpN-8xTs3XP5kxoUMQD0mUqBZ2sO8RLcL-Dkhf2ltn8</reference> 
    <id>667453c8f258729c704ec5ed39d0ab09e79e8cc6</id> 
    <adr_address>&lt;span class=&quot;locality&quot;&gt;Brentwood&lt;/span&gt;, &lt;span class=&quot;region&quot;&gt;TN&lt;/span&gt;, &lt;span class=&quot;country-name&quot;&gt;USA&lt;/span&gt;</adr_address> 
    <place_id>ChIJ41xJuq57ZIgRkN_2gzhAfTU</place_id> 
    <scope>GOOGLE</scope> 
</result> 
</PlaceDetailsResponse> 

この結果はまた、シンプルなGoogle検索の完全な詳細が含まれていない、あるいはフル"詳細"検索の結果、ドキュメンテーションに表示される "詳細"が表示されます。

私もそうのような場所のAPIと "TEXTSEARCH" やってみた:maps.googleapis.com/maps/api/place/textsearch/xml?query=TRACTOR+SUPPLY+ ...

をCOMPANY +(HQ)+ BRENTWOOD + TN &キー=これを返しにmykey

再び
<?xml version="1.0" encoding="UTF-8"?> 
<PlaceSearchResponse> 
<status>OK</status> 
<result> 
    <name>Tractor Supply Company</name> 
    <type>point_of_interest</type> 
    <type>establishment</type> 
    <formatted_address>5401 Virginia Way, Brentwood, TN 37027, United States</formatted_address> 
    <geometry> 
    <location> 
    <lat>36.0322092</lat> 
    <lng>-86.8131363</lng> 
    </location> 
    </geometry> 
    <rating>3.4</rating> 
    <icon>https://maps.gstatic.com/mapfiles/place_api/icons/generic_business-71.png</icon> 
    <reference>CnRpAAAAqLzUG_q4XIngf8xF1dcx-Gofy-uBiBvvZJoLNFFQ1ZoQ83fWx_teRICg_Fbl2dfMd2i1U9pLwYpBFx2fNeB51Yvnb6emO_IaVf7_Ex7HqvbgoawTy06aMuD3H3rr6BITfHg0Qr31a9Fkn2-k3S_UKBIQscPj4YrbojkF7Fw3j8RgMxoUcpgyXPXincWiPyuoTRA6XU9TCJU</reference> 
    <id>1733e3c88f2446c3502000eae8ddf94e63b89602</id> 
    <opening_hours> 
    <open_now>true</open_now> 
    </opening_hours> 
    <photo> 
    <photo_reference>CoQBdwAAANoj0c9wy5uab1aCuip5nlxW1XAU_2wei_XeWUNUM4Cuv3sGTSsyA4zb0qN0OKkaJOAZM7BCJgf4YPtyCvQv4h41UNsxNeT4yOppArK-JOzpOKrJT_WMcbS8c7ormj9-F_Mz5JOLPVV6bWEQKl6gqKvFGVLOpTxP0SEO50TyKffoEhDG0h4EX3lNzLIe9rFOv6nPGhRychAj_sRndkuzHC-cHVgH_wSwEw</photo_reference> 
    <width>3264</width> 
    <height>2448</height> 
    <html_attribution>&lt;a href=&quot;https://maps.google.com/maps/contrib/102180476513775764202/photos&quot;&gt;Jeremy Haggard&lt;/a&gt;</html_attribution> 
    </photo> 
    <price_level>2</price_level> 
    <place_id>ChIJL-npOFt7ZIgRgaOcl-AVuDU</place_id> 
</result> 
</PlaceSearchResponse> 

、シンプルなGoogleの地図検索から入手可能なデータのないフルセット、あるいは我々ができるようにすべきか「詳細」検索から取得する。

APIリクエストや複数のAPIリクエストをフォーマットする方法はありますが、これによって同じデータをすべて取得できますか?確かに検索データのフォーマットを違うものにすることができます(例:すべて小文字か句読記号なしなど)が、私はそれを試しましたが、それは問題ではないようです。クエリに追加する必要があるパラメータはありますか?

私はしばらくここにいましたが、私は立ち往生しています。どんな助けも大いに感謝しています。

更新:geocodezipによるコメントに続いて、私は若干異なるURLを試しました(私があなたに教えてくれることを願っています)。私は最初に緯度が&になるように上から同じ条件でジオコード検索を行い、次に緯度が&の場所API検索を行いました:... // maps.googleapis.com/maps /api/place/nearbysearch/xml?location=35.9325590,-868698999 & radius = 5000 &名前= TRACTOR | SUPPLY & key = mykey

いくつかの異なるパラメータの組み合わせを試しました。結果は混在していましたが、基本的に前よりも悪化しました。 googleマップの検索で簡単に提供される適切な単一の結果は決してありません。また、多くの場合、ネットが広すぎて結果が多すぎます。例は次のとおりです。

<?xml version="1.0" encoding="UTF-8"?> 
<PlaceSearchResponse> 
<status>OK</status> 
<result> 
    <name>Tractor Supply Co.</name> 
    <vicinity>1101 Hillview Lane, Franklin</vicinity> 
    <type>hardware_store</type> 
    <type>home_goods_store</type> 
    <type>store</type> 
    <type>point_of_interest</type> 
    <type>establishment</type> 
    <geometry> 
    <location> 
    <lat>35.8907643</lat> 
    <lng>-86.8778121</lng> 
    </location> 
    </geometry> 
    <rating>4.5</rating> 
    <icon>https://maps.gstatic.com/mapfiles/place_api/icons/shopping-71.png</icon> 
    <reference>CnRlAAAAj6SHHs-lw-RGVupH8Pvd5TH0UxslEwrZfqWt3jlWQoXfQF3F4QwtO6dRHHluYMCmTnUbZkjlb_EjxYdh1xxuKQm1t_HKEb6GFkd5O4etE6IVjVjeC90QsOtCTFi5Y3RkWPbY_bFJxveVulTZ6REhKBIQ311Kf-nQw6elbAclygFtCRoU2ZtPK0g5Arq7CZQ4Yrz_eHJvErc</reference> 
    <id>fbcd6594faab6531269569c223a846280cf5694e</id> 
    <opening_hours> 
    <open_now>true</open_now> 
    </opening_hours> 
    <photo> 
    <photo_reference>CoQBcwAAAAMQPyHJ4tzPHuVwirxpOEdNRduW3YV3qBHKtDPW9TnUWsPx0dyOP9VbUt3Xi2X5iDpiU8KAcpECr6BgI4er67LHi6vIAPPdvKnEVQxEoa0xf7-bWYJC0I8XvOr-pWE-wXth-zxNNrehDhEZ3avD6CCIycxcRMaSt0sbgIAnKf2OEhAkGkj4V_HFnnEsmgXu7xmWGhRqNCKGqYOikAH2bzLG6QC8O6Feew</photo_reference> 
    <width>348</width> 
    <height>348</height> 
    <html_attribution>&lt;a href=&quot;https://maps.google.com/maps/contrib/117785023973427282224/photos&quot;&gt;Mark Grubb&lt;/a&gt;</html_attribution> 
    </photo> 
    <price_level>2</price_level> 
    <place_id>ChIJF4g295N_ZIgRWFMbRGsSfRc</place_id> 
    <scope>GOOGLE</scope> 
</result> 
</PlaceSearchResponse> 
+0

あなたはどのような情報が欠落しています? Places APIからplaceIdの「詳細」検索を行う場合は、残りの情報を取得しますか? – geocodezip

+0

あなたの質問が正しく理解されていれば、それは2番目のリクエストと結果のブロックが示すものです。私が期待していたすべての情報は含まれていません。上記の質問を編集して、Googleマップの結果のスクリーンショットへのリンクがあることをより明確にするために、私が大部分をキャプチャしたいと思っています。また、「詳細」検索の結果であると思われる詳細の長いリストを見ると、結果に表示されません。会社名や住所など電話番号があまりないことに気付くでしょう。本当にただの都市と州。 – iamozymandius

+0

質問に投稿した詳細な返信は、ジオコーダ結果のplaceIdであり、Place APIの結果ではありません(別のものです) – geocodezip

答えて

0

ジオコード結果とプレース検索のプレースIDが異なります。 場所の結果は、ルート検索サービスから取得したplaceIdを使用してください。あなたは詳細をしている

は(ジオコーダ応答のplace_id)に要請:

<place_id>ChIJ41xJuq57ZIgRkN_2gzhAfTU</place_id> 

代わりに(場所APIレスポンスでplace_id)を使用します。

<place_id>ChIJF4g295N_ZIgRWFMbRGsSfRc</place_id> 
+0

はい、ありがとうございます。ありがとう。これは大きな助けとなり、私はこのようにもっと良い結果を得ることができました。しかし、私は質問を閉じる前に、それは私がGoogleマップの検索から得ることができるすべての同じ情報を提供していません。ビジネスがそれ自体を記述する方法、特にビジネスのために入力した可能性のあるキーワードのように見える記述フィールドがあります。私はこの検索からそれを得ることができない。また、このplaceidからストリートビューを取得しようとすると動作しますが、しばしばGoogleマップの検索には結果が生成されません。人口密度の高い場所でさえも。残りを得る方法は? – iamozymandius

関連する問題