Ich habe ungefähr 26 Stunden lang ein Skript auf Jupyter-Notizbüchern ausgeführt. Ich habe meinen Computer nicht wirklich für andere Zwecke verwendet, aber es muss dieses Programm ausgeführt werden, das ca. 30 Stunden dauert. Nach ungefähr 21 Stunden hörte es auf zu speichern und mein Terminal hatte Folgendes:
403 PUT /api/contents/[file.ipynb] (::1): '_xsrf' argument missing from POST
Dabei ist [file.ipynb] der Speicherort meines Jupyter-Notizbuchs. Es heißt auch:
'_xsrf' argument missing from post
wieder im oberen rechten Teil des Notizbuchs. Das Programm läuft noch und ich möchte das Jupyter-Notebook nicht neu starten und muss das Programm erneut ausführen, da ich eine Frist habe. Kann ich noch etwas tun?
Ich verwende Google Chrome, habe aber weder die LastPass-Erweiterung noch% -Zeichen in meinem Code, wie in einem anderen Beitrag vorgeschlagen.
Vielen Dank für jede Hilfe!
Antworten:
Der einfachste Weg, den ich gefunden habe, ist folgender:
https://github.com/nteract/hydrogen/issues/922#issuecomment-405456346
Öffnen Sie einfach ein anderes (nicht laufendes, vorhandenes) Notizbuch auf demselben Kernel, und das Problem ist auf magische Weise behoben. Sie können die Notizbücher, in denen zuvor der
_xsrf
Fehler angezeigt wurde, erneut speichern .Wenn Sie die Jupyter-Homepage bereits geschlossen haben, finden Sie auf dem Terminal, von dem aus Jupyter gestartet wurde, einen Link dazu.
quelle
Die Lösung, auf die ich gestoßen bin, scheint zu einfach, aber sie hat funktioniert. Gehen Sie zur Startseite / tree aka Jupyter und aktualisieren Sie den Browser. Hat funktioniert.
quelle
Ich benutze täglich Jupyter-Notizbücher und hatte dieses Problem noch nie zuvor erlebt ... bis heute. Ich hatte das Notebook den ganzen Tag geöffnet, aber es lief nichts und hörte dann ohne ersichtlichen Grund mit der
'_xsrf' argument missing from POST
Fehlermeldung oben rechts auf, automatisch zu speichern . Zu Ihrer Information - dies ist ein Python3-Notizbuch.Ich kenne die Ursache dieses Problems nicht, aber ich habe kürzlich meine Python3-Version auf 3.7.2 aktualisiert und alle meine Site-Pakete auf die neueste Version vor einigen Tagen aktualisiert, was möglicherweise die Ursache sein könnte.
Als Lösung habe ich, wie im Kommentar von @AlexK vorgeschlagen, dasselbe Notizbuch in einem neuen Fenster (tatsächlich ein anderer Browser) mit geöffnet
jupyter notebook list
im Terminal, um die URL mit dem Login-Token zu erhalten.
Dies führte dazu, dass ich das Notebook wieder geöffnet und speicherbar hatte, aber die Informationen, die ich seit dem letzten erfolgreichen automatischen Speichern eingegeben hatte, fehlten. Zum Glück war meine kaputte Instanz noch offen und funktionierte neben dem Speichern, sodass ich die Informationen einfach kopieren und einfügen und dann auf Speichern klicken konnte. Lassen Sie also die defekte Instanz offen, wenn Sie dies versuchen!
quelle
Wenn ich auf die Schaltfläche "Speichern" klicke, tritt dieser Fehler auf. Basierend auf den Antworten in diesem Beitrag und anderen Websites habe ich gerade die Lösung gefunden. Mein Jupyter Notebook ist von Pip installiert. Ich greife darauf zu, indem ich in die Windows-Befehlszeile 'jupyter notebook' eingebe.
(1) Öffnen Sie ein neues Befehlsfenster und dann ein neues Jupyter-Notizbuch. Versuchen Sie erneut, im alten Notizbuch zu speichern. Diesmal lautet der Fehler "Fehler: Verboten".
(2) Klicken Sie dann im alten Notizbuch auf "Herunterladen als". Es erscheint ein neues Fenster, in dem Sie nach dem Token gefragt werden.
(3) Öffnen Sie ein anderes Befehlsfenster und dann ein anderes Jupyter-Notizbuch. Geben Sie "Jupiter-Notizbuchliste" ein. Kopieren Sie den Code nach "token =" und vor :: in das Feld, das Sie gerade gesehen haben. Sie können diese Zeit sparen. Wenn dies fehlschlägt, können Sie ein anderes Token in der Liste ausprobieren
quelle
jupyter notebook list
spuckt eine lange URL aus, von der ein Teil eine lange Zeichenfolge ist, die zwischentoken=
und angezeigt wird::
. Kopieren Sie diese Zeichenfolge aus Schritt (2) und fügen Sie sie in das Feld "Passwort oder Token" ein. Der Fehler "Verboten" im ursprünglichen Jupyter-Notizbuch wird behoben.Eine Problemumgehung zur Lösung dieses Problems ist:
Laden Sie das Notizbuch herunter, das Sie nicht speichern können, indem Sie zu: Datei -> Herunterladen als -> Notizbuch (ipynb) gehen.
Öffnen Sie das heruntergeladene Notizbuch, indem Sie auf der Benutzeroberfläche des Jupyter-Browsers auf die heruntergeladene Datei klicken
Jetzt sollten Sie in der Lage sein, dieses Notizbuch über die Jupyter-Benutzeroberfläche zu speichern (oder umzubenennen)
quelle
In meinem Fall wurde dieses Problem gelöst, indem Sie auf "Kernel" (oben auf den Notebooks) und dann auf "Reconnect" klicken.
quelle
Die einzige Lösung, die für mich funktioniert hat, war:
quelle
Ich habe das gleiche Problem (es ist unmöglich, Notebooks und .py-Module zu speichern), ein Image im nvidia-Docker zu verwenden. Die Lösung bestand darin, ein Terminal in jupyter zu öffnen, ohne etwas einzugeben, aber zu beenden, sobald die Dateien gespeichert wurden. Dies wurde in derselben Browser- / Jupyter-Instanz durchgeführt.
Maschinenbetriebssystem: Ubuntu 18.04
quelle
Öffnen Sie die Entwicklereinstellung, klicken Sie auf Konsole und geben Sie Folgendes ein
JSON.parse (document.getElementById ('jupyter-config-data'). TextContent) .token
Versuchen Sie dann, das Notebook zu speichern. Das Notebook, das zuvor nicht gespeichert wurde, wird jetzt gespeichert.
quelle
Dies ist der einfachste Weg.
quelle
Ich konnte es lösen, indem ich auf das Dropdown-Menü "Kernel" klickte und "Interrupt" auswählte.
quelle
Die am häufigsten gewählte Antwort scheint bei Verwendung von Jupyter Lab nicht zu funktionieren. Dieser tut es jedoch. Kopieren Sie einfach die URL in einen neuen Tab, ersetzen Sie 'lab' durch 'tree' und drücken Sie die Eingabetaste, um die Seite zu laden. Es wird ein neues CSRF-Token für Ihre Sitzung generiert und Sie können loslegen!
Ich würde vorschlagen, Einstellungen> Dokumente automatisch speichern zu aktivieren, um zu vermeiden, dass Sie in Zukunft Arbeit verlieren. Es wird sehr regelmäßig gespeichert, daher sollte ohnehin alles auf dem neuesten Stand sein, bevor es zu Zeitüberschreitungen kommt.
quelle