私はgoogle colabを使用して辞書を作成し、それをjsonファイルにダンプして、次のコードでラップトップにファイルをダウンロードしました。
from google.colab import files
import json
dict = {'Apple': 'fruit', 'mango': 'fruit', 'carrot': 'vegetable', 'brocoli': 'vegetable', 'cat': 'animal'}
with open('sampleDictionary.json', 'w') as f:
json.dump(dict, f)
files.download('sampleDictionary.json')
f.close()
このコードを実行しようとすると、次のエラーが発生します。
MessageError Traceback (most recent call last)
<ipython-input-29-1251d71a0a36> in <module>()
7 json.dump(dict, f)
8
----> 9 files.download('sampleDictionary.json')
10 f.close()
/usr/local/lib/python3.6/dist-packages/google/colab/files.py in download(filename)
176 'port': port,
177 'path': _os.path.abspath(filename),
--> 178 'name': _os.path.basename(filename),
179 })
/usr/local/lib/python3.6/dist-packages/google/colab/output/_js.py in eval_js(script, ignore_result)
37 if ignore_result:
38 return
---> 39 return _message.read_reply_from_input(request_id)
40
41
/usr/local/lib/python3.6/dist-packages/google/colab/_message.py in read_reply_from_input(message_id, timeout_sec)
104 reply.get('colab_msg_id') == message_id):
105 if 'error' in reply:
--> 106 raise MessageError(reply['error'])
107 return reply.get('data', None)
108
MessageError: TypeError: Failed to fetch
ここをクリックして、コードとエラーのスクリーンショットを確認してください
私を助けてください
third-party cookies
を有効にする必要がありますが、現時点ではChromeブラウザでのみ機能し、
chrome://settings/content/cookies
Block third-party cookies
のオプションが無効になっていることを確認し、add
セクションのAllow
ボタンをクリックして追加します
colab.research.google.com
ewwinkのcookieソリューション は機能します。
ただし、Cookieを設定しても、長時間放置すると、コラボノートブックが自動的に切断されると、別の問題になる可能性があります。 (たとえば、一連のコードブロックを実行すると、files.downloadが実行されるまでに長い時間がかかります)
その場合は、代わりにGoogleドライブをマウントする(medchikの回答を参照)ことが、実現可能な代替手段になる可能性があります。
Colabの使用中に同じ問題(MessageError:TypeError:Failed to fetch)が発生しました。
次に、colabノートブックでファイル操作を異なるコード単位に分割します。ファイルを1つのコード単位で開いたり、書き込んだり、閉じたり、後続のコード単位でfiles.download()を使用したりします。