2016-12-11 2 views
0

Я использую следующий синтаксис:Как разобрать JSON в AppleScript

tell application "JSON Helper" 
    set Resultado to (fetch JSON from Request) 
end tell 

и я получаю:

{результаты: {{formatted_address: \ "Rua Dr. Кармело D'Agostino , 628 - Jardim Rincão, São Paulo - SP, 02991-040, Brazil \ ", partial_match: true, address_components: {{short_name: \" 628 \ ", long_name: \" 628 \ ", types: {\" street_number \ "}}, {short_name: \" Rua Dr. Carmelo D'Agostino \ ", long_name: \" Rua Doutor Carmelo D'Agostino \ ", типы: {\" route \ "}}, {short_name: \" Jardim Rincão \ ", long_name: \" Jardim Rincão \ ", типы: {\" polit \ ", \" sublocality \ ", \" subl ocality_level_1 \ "}}, {short_name: \" São Paulo \ ", long_name: \" São Paulo \ ", типы: {\" Administrative_area_level_2 \ ", \" polit \ "}}, {short_name: \" SP \ " , long_name: \ "São Paulo \", типы: {\ "Administrative_area_level_1 \", \ "polit \"}}, {short_name: \ "BR \", long_name: \ "Brazil \", types: {\ "country \ ", \" polit \ "}}, {short_name: \" 02991-040 \ ", long_name: \" 02991-040 \ ", types: {\" postal_code \ "}}}, geometry: {viewport: { северо-восток: {lat: -23.432391219708, lng: -46.725645019708}, юго-запад: {lat: -23.435089180292, lng: -46.728342980292}}, местоположение: {lat: -23.4337402, lng: -46.726994}, location_type: \ "ROOFTOP \" }, place_id: \ "ChIJgVGzRqL7zpQRTQPNqsmBVLY \", типы: {\ "street_address \"}}}, status: \ "OK \"}. "номер -1728 из пункта 1 {результатов: {{formatted_address:" Rua Dr. Carmelo D'Agostino, 628 - Jardim Rincão, São Paulo - SP, 02991-040, Brazil ", partial_match: true, address_components: {{short_name:" 628 ", long_name:" 628 ", types: {" street_number "}} , {short_name: "Rua Dr. Carmelo D'Agostino", long_name: "Rua Doutor Ca rmelo D'Agostino ", типы: {" route "}}, {short_name:" Jardim Rincão ", long_name:" Jardim Rincão ", типы: {" политический "," субблочность "," sublocality_level_1 "}}, {short_name: «São Paulo», long_name: «São Paulo», типы: {«Administrative_area_level_2», «политический»}}, {short_name: "SP", long_name: "São Paulo", типы: {"Administrative_area_level_1", "политический"} }, {short_name: "BR", long_name: "Brazil", типы: {"страна", "политический"}}, {short_name: "02991-040", long_name: "02991-040", types: {"postal_code "}}}, геометрия: {viewport: {северо-восток: {lat: -23.432391219708, lng: -46.725645019708}, юго-запад: {lat: -23.435089180292, lng: -46.728342980292}}, местоположение: {lat: -23.4337402, lng: -46,726994}, LOCATION_TYPE: "КРЫША"}, place_id: "ChIJgVGzRqL7zpQRTQPNqsmBVLY", типы: { "street_address"}}}, статус: "OK"}

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

Lat: -23,4952611, LNG: -46,6724604

Это не должно быть никакой опасности, но я не был в состоянии сделать это сам через несколько часов, пытаясь так anyhelp будет много оценили!

@vanian воспользовавшись вашими навыками (и поблагодарить вас очень много для него) не могли бы вы сказать мне теперь, как добраться:

«02991-040», который появляется на «formatted_address», а также здесь

{short_name: \ "02991-040 \", значение параметра long_name: \ "02991-040 \", типа: {\ "postal_code \"}

Best!

ответ

2

JSON преобразуется в списки AppleScript и записей

if Resultado's status is "OK" then 
    tell location of geometry of item 1 of results of Resultado 
     set latitude to its lat 
     set longitude to its lng 
    end tell 
end if