bokehライブラリを使用してGMapPlotのgoogle mapsプロットを表示するPythonアプリケーションがあります。 GMapOptionsでマップスタイルを変更するには、./map/styles.JSONにローカルに保存されているthis .JSONファイルを読み込み、それを文字列に変換しています。 Win10では、これは私はUbuntuのサーバ上でアプリケーションを実行しているときにエラーが新しいエラーが Ubuntuで.JSONファイルを開くことができません
ValueError: expected JSON text, got '\xef\xbb\xbf[...
..."#dadada"\r\n }\r\n ]\r\n }\r\n]'
を上げているエンコーディングの文がなければ
Traceback (most recent call last):
File "photo_map.py", line 22, in <module>
with open(r"./map/styles.JSON", encoding='utf-8-sig') as file:
TypeError: 'encoding' is an invalid keyword argument for this function
を上げているが
with open(r"./map/styles.JSON", encoding='utf-8-sig') as file:
styles = file.read().splitlines()
styles="".join(styles)
、と正常に動作します
私はまた、jsonモジュールとdecode()メソッドをうまく動作させようとしました。
Pythonスクリプト内で.JSONデータを文字列として含む変数を宣言すると、Win10とUbuntuでは正常に動作しますが、明らかに回避策に過ぎません。
ありがとうございました!
UbuntuサーバがPython 3.xを実行していますか? –
Python 2.xで実行しています。 ':codecsをインポートすることを忘れないでください。':codecs.open( "./ map/styles.JSON"、 "utf-8")をfile:...としてみてください。 – zwer