Python 2.7.9中的控制字符错误无效

时间:2015-04-22 17:52:28

标签: python json python-2.7 gis arcgis

运行以下python脚本时收到以下错误。

ValueError:无效的控制字符位于:第7591行第220620行(字符385678)

我对此进行了一些研究,似乎通过传递' strict = false'来解决它。在json.dumps()中,但我仍然收到同样的错误。这是我尝试查询的唯一一个返回此错误的REST服务。

import arcgis
import json

from arcgis import ArcGIS
service = ArcGIS("http://mapping.dekalbcountyga.gov/arcgis/rest/services/LandUse/MapServer")
query = service.get(0, count_only=False)
json_query = json.dumps(query, strict=False)
f = open("dekalb_parcels.geojson", "w")
f.write(json_query)
f.close()

我们非常感谢您提供的任何帮助。谢谢。

更新 - 这是我收到的完整错误。

Traceback (most recent call last):
  File "G:\Python\Scripts\dekalb_parcel_query.py", line 8, in <module>
    query = service.get(0, count_only=False)
  File "C:\Python27\lib\site-packages\arcgis\arcgis.py", line 146, in get
    jsobj = self.get_json(layer, where, fields, count_only, srid)
  File "C:\Python27\lib\site-packages\arcgis\arcgis.py", line 90, in get_json
    return response.json()
  File "C:\Python27\lib\site-packages\requests\models.py", line 802, in json
    return json.loads(self.text, **kwargs)
  File "C:\Python27\lib\json\__init__.py", line 338, in loads
    return _default_decoder.decode(s)
  File "C:\Python27\lib\json\decoder.py", line 366, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\Python27\lib\json\decoder.py", line 382, in raw_decode
    obj, end = self.scan_once(s, idx)
ValueError: Invalid control character at: line 7591 column 220620 (char 385678)

1 个答案:

答案 0 :(得分:1)

我可以通过在strict=False

中传递return response.json()来解决此问题