Я хотел бы получить список всех квартир в городе Бангалор, используя API мест Google.

Это Часть 1 из серии сообщений в блоге, посвященных решению проблемы.

Я изучил несколько списков квартир. Например, Prestige shantiniketan и проверил параметры, которые хранятся для каждой из этих квартир, чтобы найти закономерность в этих списках.

На данный момент я не вижу четкой закономерности, но она может развиться в ходе этого исследования.

Свободные шаблоны, которые я нашел, и то, как я их нашел, перечислены здесь.

1.Проверил название квартиры на гугл картах. Я вижу несколько записей для определенного названия квартиры, когда набираю maps.google.com .

Теперь о том, как выбрать только одну вместо нескольких записей. Итак, глядя на тип возвращаемых записей, мы видим, что несколько записей были сделаны для нескольких местоположений в помещении квартиры.

У Google есть тип: «Premise», который можно было добавить при вводе квартиры, но он не использовался в большинстве списков. Я вижу тип как 'заведение' и 'point_of_interest' для многих квартир.

Как я нашел это?

Выполните поиск Prestige Shantiniketan и откройте каждый из первых 5 результатов. Почему только эти 5 ..Потому что Google уже ранжирует результаты на основе полноты адреса и других деталей, а также предпочтений, отдаваемых пользователями, которые искали и выбирали эти адреса в прошлом. .

Почему у нас так много заявок на одно место?

В идеале должен был быть один идентификатор места, но у нас есть несколько человек, которые написали об этом месте, и эти записи были одобрены командой мест.

Из них мне все еще нужно выбрать только одну запись для одной квартиры. Итак, для конкретного примера выше я смог найти одну запись из этих 5, у которых было много отзывов и фотографий. Теперь я хочу посмотреть, что отличается от эта запись по сравнению с другими записями для той же квартиры, чтобы я мог написать свой код, чтобы отдать предпочтение выбору только этой записи, если появится несколько результатов.

Для этого я пошел, чтобы найти все детали, которые Google может предоставить для этого результата. Как мы это делаем ?

  1. Сгенерировать API-ключ:

2. Найдите идентификатор места.

  • Перейдите на https://developers.google.com/places/web-service/place-id.
  • Начните вводить «Престиж Шантиникетан». Выберите место с отзывами и фотографиями.
  • Place_id возвращается для вышеуказанного.

Теперь найдите более подробную информацию об этом месте, чтобы найти шаблон. Для этого используйте приведенный ниже API с вашим ключом.

https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJFZW5kO4RrjsR1nBFTv4M2pQ&key=YOUR_api_key

Результат в этом случае показывает следующее.

{
 "html_attributions" : [],
 "result" : {
 "address_components" : [
 {
 "long_name" : "Bengaluru",
 "short_name" : "Bengaluru",
 "types" : [ "locality", "political" ]
 },
 {
 "long_name" : "Thigalarapalya",
 "short_name" : "Thigalarapalya",
 "types" : [ "sublocality_level_2", "sublocality", "political" ]
 },
 {
 "long_name" : "Krishnarajapura",
 "short_name" : "Krishnarajapura",
 "types" : [ "sublocality_level_1", "sublocality", "political" ]
 },
 {
 "long_name" : "Bangalore Urban",
 "short_name" : "Bangalore Urban",
 "types" : [ "administrative_area_level_2", "political" ]
 },
 {
 "long_name" : "Karnataka",
 "short_name" : "KA",
 "types" : [ "administrative_area_level_1", "political" ]
 },
 {
 "long_name" : "India",
 "short_name" : "IN",
 "types" : [ "country", "political" ]
 },
 {
 "long_name" : "560048",
 "short_name" : "560048",
 "types" : [ "postal_code" ]
 }
 ],
 "adr_address" : "16, Whitefield Main Rd, Whitefield Main Road, \u003cspan class=\"street-address\"\u003eSadara Mangala Industrial Area, Thigalarapalya, Hoodi\u003c/span\u003e, \u003cspan class=\"extended-address\"\u003eThigalarapalya, Krishnarajapura\u003c/span\u003e, \u003cspan class=\"locality\"\u003eBengaluru\u003c/span\u003e, \u003cspan class=\"region\"\u003eKarnataka\u003c/span\u003e \u003cspan class=\"postal-code\"\u003e560048\u003c/span\u003e, \u003cspan class=\"country-name\"\u003eIndia\u003c/span\u003e",
 "formatted_address" : "16, Whitefield Main Rd, Whitefield Main Road, Sadara Mangala Industrial Area, Thigalarapalya, Hoodi, Thigalarapalya, Krishnarajapura, Bengaluru, Karnataka 560048, India",
 "geometry" : {
 "location" : {
 "lat" : 12.9914982,
 "lng" : 77.72776619999999
 },
 "viewport" : {
 "northeast" : {
 "lat" : 12.99288595,
 "lng" : 77.72968879999999
 },
 "southwest" : {
 "lat" : 12.98733495,
 "lng" : 77.72592160000002
 }
 }
 },
 "icon" : "https://maps.gstatic.com/mapfiles/place_api/icons/generic_business-71.png",
 "id" : "cd2557c6fbb5417c7e457461313d6cc9447fe5a3",
 "name" : "Prestige Shantiniketan",
 "photos" : [
 {
 "height" : 3120,
 "html_attributions" : [
 "\u003ca href=\"https://maps.google.com/maps/contrib/101733567192041691289/photos\"\u003eAkshaye Shenoi\u003c/a\u003e"
 ],
 "photo_reference" : "CmRaAAAALzRtOgwIfTVc_VYVvg7hUxIus8sOB31qhTtAfi7JteKrw0Jbcd_jaaNSVWomob9j9MG-xOVVwx1RsGgkuupUQJByNoS_DgMMK8f08GGa5VkQB7j7nq3419axKdZIuPhxEhAn1Rqxld_M6r1N2cM7elysGhTIftLGvYOGORfGy0ZnWxQ9vEV99g",
 "width" : 4160
 },
 {
 "height" : 780,
 "html_attributions" : [
 "\u003ca href=\"https://maps.google.com/maps/contrib/115739460801616530971/photos\"\u003eAnoop Pahwa\u003c/a\u003e"
 ],
 "photo_reference" : "CmRaAAAAcdMNY76hQXQ8zNVwtt03MYt7aWwAxnn3kzV1UItUfJUQtIRJ_UXUvnE3F_JvMV0NwHXAeYl8uyzIh5D2HJxN25gDNTAk4XHmO89FnRNsKXaYzlx4eVgJg3KfkYaHAG0nEhDA47PsBFqBj4ach7r5TOfeGhQJjlyf3tOnkL2bnz8TK99ssgLYMA",
 "width" : 1040
 },
 {
 "height" : 2976,
 "html_attributions" : [
 "\u003ca href=\"https://maps.google.com/maps/contrib/116204421423853992196/photos\"\u003eSakshi Paliwal\u003c/a\u003e"
 ],
 "photo_reference" : "CmRaAAAAilS3U5hZXoGBLaRoGTt91CLeLXq6G8SEFd9nzDaHWR3UYXhwWo45bd2_1Cd61CoWzpcBD6FGRlyIfPaEivTy3zG_d_iyVJyCNofYMb42zh-HBtOSBcU00wzkONUyg8uCEhDu9VlpQSKaZ2tsBeMuPPqXGhQsMzbcPLkAo7uCmfv0PlsBFe4FmA",
 "width" : 3968
 },
 {
 "height" : 3456,
 "html_attributions" : [
 "\u003ca href=\"https://maps.google.com/maps/contrib/114936990969530063984/photos\"\u003ePrashant Malunjkar\u003c/a\u003e"
 ],
 "photo_reference" : "CmRaAAAA-Yb4MJ2tZlIV3mUWailv6hZMMf4dYXtxT8Qpk1eyiEnjqDTtjaTw1OEw-OgI9PkQ-isIVdm0DI7qkq10ZInDp3C2iJOBM4KEJpYw2W7FvO7cABtWrD-ZdV5G3GqXq_UXEhCUSRD9YHDjFW1AciiSgLBQGhQj4k3yvfNUtC6zkiIS4EZ-vmej4g",
 "width" : 4608
 },
 {
 "height" : 3120,
 "html_attributions" : [
 "\u003ca href=\"https://maps.google.com/maps/contrib/101733567192041691289/photos\"\u003eAkshaye Shenoi\u003c/a\u003e"
 ],
 "photo_reference" : "CmRaAAAAkJveyGErC1kjPHDPAM200KPSKKZkqJYZLZxvWsWarlPHorykCTP6NKIVYnRtZ3X4W9Z2S68AAG9_oFuzE0wpa6EKan9rtUSYa8Z5bMTM-G-V1LXtplIzqqHCJZaQ_-61EhCVRG7zxq0Ox255HkCtOuZxGhQt-BTrGoWcW1tRKkRAM-keIZfiug",
 "width" : 4160
 },
 {
 "height" : 1153,
 "html_attributions" : [
 "\u003ca href=\"https://maps.google.com/maps/contrib/114320960265725424297/photos\"\u003eSmit Mehta\u003c/a\u003e"
 ],
 "photo_reference" : "CmRaAAAArbY41ShIggSukc1ZM0CtaOEoLX2cj-Rm2WoW7yZ2VEgy2MH8e-pen2CcigCwWB13mXYZwQcuF2u2nP0cGx7lgYv5pBvjem7lTvciCBShNbsUZ0sss5A0SXHC2G8wDkVEEhAQDQHSVc7X8Beubw7u1vlDGhRaR3gieA21u_NtKcXVKFH7P1nEuQ",
 "width" : 2048
 },
 {
 "height" : 2204,
 "html_attributions" : [
 "\u003ca href=\"https://maps.google.com/maps/contrib/116855147711046091527/photos\"\u003eniraj bhardwaj\u003c/a\u003e"
 ],
 "photo_reference" : "CmRaAAAAjCKEOJ0Bhrue7nJAkMclKAkONBTIVo8-UqNXSgIKpmHuk3HgW6-EFzR-z9SfCzu3VI63wrua_CcSCwRc02bzM4zogVKaO1k12F6Ye5qZZ50oTnIymTu8kl6QoxQoL4eQEhDKuqQRJurzoW8m6q3e6qXqGhSwCgSzFRsJDTwg0jPjEwtSw0ZBGQ",
 "width" : 3920
 },
 {
 "height" : 3024,
 "html_attributions" : [
 "\u003ca href=\"https://maps.google.com/maps/contrib/106047284265471211643/photos\"\u003eharpreet singh\u003c/a\u003e"
 ],
 "photo_reference" : "CmRaAAAAK1qY4WGrYM_H4mCZ57hpYmcyQwpsn23xnkKKnAH5QPJakPVg5pfAsMJ7BJwZJjakq2E9lFpCs5wUna_fkzjIfezi2dBSFoT8mldAOA1L8s6M_LVAFC3IjDA8cobHBvKeEhBMXuO1HQWNhHkOQBZEwLGqGhTH2EL7FP3oSGPNC8XuVzki_IyJMw",
 "width" : 4032
 },
 {
 "height" : 3036,
 "html_attributions" : [
 "\u003ca href=\"https://maps.google.com/maps/contrib/110283313457752199101/photos\"\u003eSatwik Raj\u003c/a\u003e"
 ],
 "photo_reference" : "CmRaAAAANEiwofUuTiA4BCIfcNImRA4lBj76ZTyWyzdwLDen2JVNyKfazBwLWbpad6g9WG9V15xrN3rDEr_m1HY01SO1vuPPJayvdypwBum1nv7hbjbQl9x4keihL10C22oNsfviEhA32mMpbAw0FHojUaQDB1a7GhTbCtFwO8rloBuglWd2LvxhIufxoA",
 "width" : 4048
 },
 {
 "height" : 3456,
 "html_attributions" : [
 "\u003ca href=\"https://maps.google.com/maps/contrib/101047754534183293349/photos\"\u003ejitender singh\u003c/a\u003e"
 ],
 "photo_reference" : "CmRaAAAA3R30xQ4jIQPQjY1x0fBOW5uMcXOiHwPswOBzMagNg8Y_hWPutKY9nk5vUU8N-Dmog-vO8jDPx-4JsUvcPT7O3eUHwAerjYvGDGN0FtgvbVFu2D5xUeAI6rdF6QJOi-V4EhDETJeb4RbwI3g6F9IdgIsAGhRgOYlPHEe77S-HN8570gORtp71tg",
 "width" : 4608
 }
 ],
 "place_id" : "ChIJFZW5kO4RrjsR1nBFTv4M2pQ",
 "rating" : 4.4,
 "reference" : "CmRSAAAA964Fk7tAMUjUxiLirdQXH5xWQ6TP9tWt6E_uuzeFuFZvHFT1rNAoVFRrM7bNjTADo_yCOnxlIG_wGNxM_yaDoeRgwHmW9INBJaPMG3K8uoqQwyw7cOPmAALAh4vREr_WEhAzFWPMWGPNRJ_396sqU4kfGhTFNMEEd5FggDOVR6iDKnRj8_ShSw",
 "reviews" : [
 {
 "author_name" : "Sai Saathvik",
 "author_url" : "https://www.google.com/maps/contrib/111982536905657979147/reviews",
 "language" : "en",
 "profile_photo_url" : "https://lh5.googleusercontent.com/-RcbT-fAiKEM/AAAAAAAAAAI/AAAAAAAACzs/gCSmNJarL3k/s128-c0x00000000-cc-rp-mo-ba3/photo.jpg",
 "rating" : 5,
 "relative_time_description" : "a month ago",
 "text" : "Been staying here for 8 years now. It's one of the best communities and it's got lots of space with lush green trees all over the place. Amazing maintenance by the staff. All the amenities you can think of are right here. It's a city in itself with a  hospital, supermarkets,food shops,malls and offices too. Events hosted here are brilliant especially during festivals. Sports is a common thing for everyone here. The apartments are build with proper planning.",
 "time" : 1517166653
 },
 {
 "author_name" : "rajesh kumar",
 "author_url" : "https://www.google.com/maps/contrib/102797128579967527517/reviews",
 "language" : "en",
 "profile_photo_url" : "https://lh5.googleusercontent.com/-Dz1agWmBNYk/AAAAAAAAAAI/AAAAAAAAGLE/lwTJc5ZnvSQ/s128-c0x00000000-cc-rp-mo-ba4/photo.jpg",
 "rating" : 5,
 "relative_time_description" : "a month ago",
 "text" : "Well planned and massive apartment society. Went there to visit a friend. The layout of the complex is well thought of. You will get all amenities you can think of. There is adjoining business park. Walking distance from ITPL. This complex has grocery store as well as food outlets within the campus. It's has multi level underground parking.",
 "time" : 1518241773
 },
 {
 "author_name" : "Ravi Kumar Tummala",
 "author_url" : "https://www.google.com/maps/contrib/113476495731963164529/reviews",
 "language" : "en",
 "profile_photo_url" : "https://lh4.googleusercontent.com/-V_60hvzO804/AAAAAAAAAAI/AAAAAAAAD8k/MQaTI_cosGI/s128-c0x00000000-cc-rp-mo-ba3/photo.jpg",
 "rating" : 5,
 "relative_time_description" : "3 weeks ago",
 "text" : "Great place with all the amenities one can imagine. Little higher side on rent but if you work near by, you can escape the traffic. Peaceful and awesome locality.",
 "time" : 1520090256
 },
 {
 "author_name" : "yaayaaya com",
 "author_url" : "https://www.google.com/maps/contrib/112751633422195566386/reviews",
 "language" : "en",
 "profile_photo_url" : "https://lh4.googleusercontent.com/-A0ZbQcG_1GA/AAAAAAAAAAI/AAAAAAAAADI/9lewbCGNSLQ/s128-c0x00000000-cc-rp-mo-ba5/photo.jpg",
 "rating" : 5,
 "relative_time_description" : "3 months ago",
 "text" : "This IT park is home for more than 200 companies. Many big names, few popular names. This also has a shopping mall, a star hotel and connected huge residential complex. Security, parking facilities, roads, landscape are all top class. Food options could be better and economical. Public transport connectivity is good.",
 "time" : 1512651741
 },
 {
 "author_name" : "Rajeev Kumar",
 "author_url" : "https://www.google.com/maps/contrib/100303542543370428086/reviews",
 "language" : "en",
 "profile_photo_url" : "https://lh4.googleusercontent.com/-4uWrpUH1_Is/AAAAAAAAAAI/AAAAAAAAF94/Oj5wQxX07UY/s128-c0x00000000-cc-rp-mo-ba3/photo.jpg",
 "rating" : 5,
 "relative_time_description" : "2 months ago",
 "text" : "Excellent apartment complex. It's a town in itself with shopping complex and all sports facilities inside. I really was very impressed the way they have developed and the facilities present inside",
 "time" : 1515669028
 }
 ],
 "scope" : "GOOGLE",
 "types" : [ "point_of_interest", "establishment" ],
 "url" : "https://maps.google.com/?cid=10725899748910657750",
 "utc_offset" : 330,
 "vicinity" : "16, Whitefield Main Rd, Whitefield Main Road, Sadara Mangala Industrial Area, Thigalarapalya, Hoodi, Bengaluru"
 },
 "status" : "OK"

Обратите внимание на поле типов — "types" : [ "point_of_interest", "establishment" ],

Проверяя большинство квартир, большинство из них были отмечены одним из следующих

  1. учреждение (которое должно было использоваться только для бизнеса)
  2. помещение (выглядит как подходящий тип для классификации квартир, но мало использовался)
  3. point_of_interest (это использовалось во многих квартирах, в идеале должно было использоваться для таких выдающихся вещей, как, например, LalBagh)

Учитывая вышесказанное, я продолжу поиск всех тех «адресов» вокруг этой квартиры, которые были отмечены как заведения и достопримечательности.

Читая документацию по API в здесь и здесь, не похоже, что мы можем использовать для поиска всех заведений или точек интереса. Но можно использовать популярность. Позвольте мне проверить, куда она меня приведет. Выводы будут частью Части 2.