Я использую Google Maps API Nearby Search, чтобы найти рестораны поблизости. Но одна проблема, с которой я столкнулся, заключается в том, что возвращаются не все результаты type=restaurant
. В случае с определенной точкой в Уэллсли, Массачусетс, когда я запускаю https://maps.googleapis.com/maps/api/place/nearbysearch/xml?location=42.3153566,-71.2449400&radius=1500&type=restaurant&key=MY_API_KEY, я Я могу получить три результата, в том числе Brothers Pizza в Needham, Panellas Market в Needham Heights и Kings Dining в Wellesley, все с типом ресторана. Однако, когда я меняю type=restaurant
на keyword=wok
, я получаю только один результат, которого раньше не было:
<name>The Wok</name>
<vicinity>180 Worcester St, Wellesley</vicinity>
<type>restaurant</type>
<type>food</type>
<type>point_of_interest</type>
<type>establishment</type>
<geometry>
<location>
<lat>42.3153566</lat>
<lng>-71.2449400</lng>
...
Это, очевидно, помечено как ресторан, как и остальные три. Обратите внимание, что координаты для The Wok точно такие же, какие я использовал для более раннего запроса, который не вернул The Wok, поэтому он определенно находится в радиусе более раннего запроса, который также должен был вернуть этот четвертый результат. Это вызывает у меня проблему, так как я хочу иметь возможность собирать все рестораны в данной области. Тогда кажется, что Google API собирает не все результаты из области, а какую-то их таинственную часть. Я уже знаю, что один поиск не дает более двадцати результатов, но мой предыдущий поиск, начиная с радиуса с центром в Вок, дал только три результата. Мне удалось воспроизвести эту конкретную проблему с Wok несколько раз, так что может ли это быть проблемой с данными, которые Google имеет специально для Wok?
РЕДАКТИРОВАТЬ: Использованиеkeyword=restaurant
решает проблему, но поскольку API выполняет поиск во многих полях, включая обзоры, чтобы найти потенциальные совпадения для ключевого слова, это может привести к нежелательным результатам. Я ищу исключительно рестораны, а не другие виды заведений.