首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在jupyter笔记本中转换JSONDecodeError查询时的OpenStreetMap

问在jupyter笔记本中转换JSONDecodeError查询时的OpenStreetMap
EN

Stack Overflow用户
提问于 2022-05-09 01:40:12
回答 1查看 54关注 0票数 0

我需要与OpenStreetMap相关的帮助。我正在使用python (jupyter笔记本)来获取印度尼西亚巴厘岛地区医院的数据。下面是我的代码和查询:

代码语言:javascript
复制
import pandas as pd
import requests
import json

overpass_api = "http://overpass-api.de/api/interpreter"

query_hospital = """
[out:json];
{{geocodeArea:'Provinsi Bali'}}->.searchArea;
node[amenity='hospital'](area.searchArea);
out;
"""

response_hospital = requests.get(overpass_api, params={'data':query_hospital})

但当我运行下一个代码时,

代码语言:javascript
复制
data_hospital = response_hospital.json()

它返回错误JSONDecodeError: Expecting value: line 1 column 1 (char 0)

该查询在立交桥涡轮中运行良好,但当我输入笔记本时,它会返回错误。

EN

回答 1

Stack Overflow用户

发布于 2022-05-09 22:56:35

我找到了解决办法。看起来python无法解析openstreetmap查询中的双大括号{}。因此,我将查询修改为如下

代码语言:javascript
复制
query_hospital = """
[out:json];
area[name=Bali];
node[amenity='hospital'](area);
out;
"""

或者如果我们在本地语言中使用区域名称

代码语言:javascript
复制
query_hospital = """
[out:json];
area['name:id'='Provinsi Bali'];
node[amenity='hospital'](area);
out;
"""

查询返回相同的结果,现在python可以解析它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72166224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档