2012-03-06 4 views
1

중복 된 장소를 반환 한 장소 검색을 수행했습니다. 중복 개최지는 장소 ID 및 위도/경도 정보를 제외하고 동일합니다. foursquare.com에서 동일한 검색을 수행하면 복제본이 표시되지 않습니다. 복제물을 어떻게 제외시킬 수 있습니까? https://api.foursquare.com/v2/venues/search?ll=38.468807,-77.372589&query=starbucks장소 검색 api가 잘못된 위도/경도로 중복 된 장소를 반환합니다.

결과 :

{ 
    meta: { 
     code: 200 
    } 
    notifications: [ 
    { 
     type: "notificationTray" 
     item: { 
      unreadCount: 0 
     } 
    }] 
    response: { 
     venues: [ 
     { 
      id: "4e4dc886bd41b76bef93082e" 
      name: "Starbucks Coffee" 
      contact: { 
       phone: "5407209145" 
       formattedPhone: "(540) 720-9145" 
      } 
      location: { 
       address: "1495 Stafford Market Pl" 
       lat: 38.47310969662029 
       lng: -77.38591645407749 
       distance: 1256 
       postalCode: "22556" 
       city: "Stafford" 
       state: "VA" 
       country: "United States" 
      } 
      categories: [ 
      { 
       id: "4bf58dd8d48988d1e0931735" 
       name: "Coffee Shop" 
       pluralName: "Coffee Shops" 
       shortName: "Coffee Shop" 
       icon: { 
        prefix: "https://foursquare.com/img/categories/food/coffeeshop_" 
        sizes: [ 32 44 64 88 256 ] 
        name: ".png" 
       } 
       primary: true 
      }] 
      verified: false 
      stats: { 
       checkinsCount: 13 
       usersCount: 11 
       tipCount: 0 
      } 
      specials: { 
       count: 0 
       items: [ ] 
      } 
      hereNow: { 
       count: 0 
      } 
     }, 
     { 
      id: "4b8dd66ef964a520071033e3" 
      name: "Starbucks" 
      contact: { 
       phone: "5407209145" 
       formattedPhone: "(540) 720-9145" 
      } 
      location: { 
       address: "1495 Stafford Market Place" 
       crossStreet: "Garrisonville Road" 
       lat: 38.470214117289444 
       lng: -77.41142749786377 
       distance: 3388 
       postalCode: "22554" 
       city: "Stafford" 
       state: "VA" 
       country: "United States" 
      } 
      categories: [ 
      { 
       id: "4bf58dd8d48988d1e0931735" 
       name: "Coffee Shop" 
       pluralName: "Coffee Shops" 
       shortName: "Coffee Shop" 
       icon: { 
        prefix: "https://foursquare.com/img/categories/food/coffeeshop_" 
        sizes: [ 32 44 64 88 256 ] 
        name: ".png" 
       } 
       primary: true 
      }] 
      verified: true 
      stats: { 
       checkinsCount: 1885 
       usersCount: 522 
       tipCount: 14 
      } 
      url: "http://www.starbucks.com/" 
      specials: { 
       count: 0 
       items: [ ] 
      } 
      hereNow: { 
       count: 0 
      } 
      menu: { 
       url: "https://foursquare.com/v/starbucks/4b8dd66ef964a520071033e3/menu" 
       mobileUrl: "https://foursquare.com/v/4b8dd66ef964a520071033e3/device_menu" 
      } 
     }, 
     { 
      id: "4d87c7bba98841bd5eaf3055" 
      name: "Starbucks" 
      contact: { 
       phone: "5407209145" 
       formattedPhone: "(540) 720-9145" 
       twitter: "starbucks" 
      } 
      location: { 
       address: "1495 Stafford Market Place" 
       lat: 38.50188672 
       lng: -77.37500964 
       distance: 3688 
       postalCode: "22556" 
       city: "Stafford" 
       state: "Virginia" 
       country: "United States" 
      } 
      categories: [ ] 
      verified: true 
      stats: { 
       checkinsCount: 17 
       usersCount: 11 
       tipCount: 0 
      } 
      specials: { 
       count: 0 
       items: [ ] 
      } 
      hereNow: { 
       count: 0 
      } 
     } 
    } 
} 

두 번째 장소, ID = 4b8dd66ef964a520071033e3, 실제 여기있다

은 API 호출 (마이너스 비밀)입니다. 나머지 2는 중복입니다.

+0

당신은 실제 API 호출 (마이너스 비밀) 및 결과를 제공 할 수 있습니까? 더 자세한 내용없이 디버깅하는 것을 도와주는 것은 불가능합니다. – akdotcom

답변

2

키/값 "verified : false"가 있으므로 첫 번째 결과를 배제합니다. 확인 : true는 소유자가 소유권을 주장했음을 의미합니다.

다음 두 번째 결과는 세 번째 결과보다 우수하다는 점에 유의해야합니다. 1. 범주가 입니다. 2. checkinsCount가 더 높습니다. 이 경우 훨씬 더 높습니다. 당신이 "컴팩트 한 장소"결과의 완성도를 평가하는 알고리즘을 만든 경우 3. 그것은 웹 사이트 링크가 (URL) 4. 그것은 메뉴 5. 위치에 연결했다가,

기본적으로 크로스 거리가 있습니다 Foursquare.com의 독창성을 근사치로 표현할 수 있습니다. 나는 다른 속성의 모든 금액을 합산하고 확인 된 속성, 체크인 수 및 팁 (사람들이 그 장소를 사용하는지 알려주는)에 추가 가중치를줍니다. 아마도 이름, 거리 주소 및 가능한 전화 번호를 키로 사용합니다. 우편 번호는 사용하는 것이 좋을 것 같지만,이 경우 정규 표준이어야하는 결과에는 맞지 않습니다.

내가 대답하기 위해 사용되는 좋은 참고 문서 이것이다 : https://developer.foursquare.com/docs/responses/venue

+0

내 요청에 뭔가 빠졌 으면 좋겠지 만, 이것은 가장 좋은 경로처럼 들립니다. 감사. – scott4arrows

관련 문제