Ошибка API Facebook в Python: широта и долгота должны быть в формате десятичной степени со знаком, например 37.484531, -122,148061 - PullRequest
0 голосов
/ 05 июля 2018

Я пытаюсь использовать Поиск мест Facebook в их API. Всякий раз, когда я указываю параметры для центра (который принимает пары широта / длинна в формате XX.XX, -XX.XX), он выдает ошибку. Однако я не уверен, как отформатировать координаты широты / долготы в Python. Если я заключаю координаты в скобки, я получаю ту же ошибку. Если я не заключаю координаты в скобки, Python воспринимает это как синтаксическую ошибку.

Вот что я пытаюсь представить:

import facebook
token = 'XXXX'
graph = facebook.GraphAPI(access_token = token, version = '2.7')
place = graph.search(type = 'place', q = 'restaurants', center = 
[29.77462,-95.41092], fields = 'name,location,hours,overall_star_rating,rating_count,checkins,description,is_permanently_closed')

Тем не менее, это то, что я получаю обратно:

c:\users\[user]\src\facebook-sdk\facebook\__init__.py in search(self, type, 
**args)
133 
134         args["type"] = type
--> 135         return self.request(self.version + "/search/", args)
136 
137     def get_connections(self, id, connection_name, **args):

c:\users\[user]\src\facebook-sdk\facebook\__init__.py in request(self, path, 
args, post_args, files, method)
289 
290         if result and isinstance(result, dict) and result.get("error"):
--> 291             raise GraphAPIError(result)
292         return result
293 

GraphAPIError: (#100) For field 'placesearch': Latitude and longitude must be 
in the signed decimal degree format, e.g. 37.484531,-122.148061

Как мне обойти эту ошибку, которая не принимает мои координаты широты / долготы?

1 Ответ

0 голосов
/ 06 июля 2018

Неважно, нашел проблему: координаты должны быть в строке, поэтому аргумент должен быть:

center = '29.77462,-95.41092'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...