'Jupyter Notebook didn't save for over a day. How can I recover lost work?

I've lost a day's work in Jupyter Notebook because it didn't autosave. As I was working, I would click on File > Save and Checkpoint to be safe. I closed the notebook when I finished working and when I tried reopening it, I see that essentially all my work is gone and it says Last Checkpoint: a day ago (autosaved) next to the filename. I now realize that I had been working for a long time on the notebook with an orange box with some kind of error message. I'm sorry that I can't remember the specific message right now, but I think it was something involving POS or POST or POSIT ...?. I saw Trusted next to the error message, so I must've thought things were OK.

I tried opening the filename-checkpoint.ipynb file within the .ipynb_checkpoints folder but it's blank. I looked up a possible solution on Recovering from a Jupyter Disaster, but it requires SQL, which I don't know. Is there any hope for recovering my work? I realize that this is probably a rookie mistake, but I'm pretty new at this.

Thanks

PS: I'm running Python3 on MacOS



Solution 1:[1]

Hope you've already found how to recover lost work from Jupyter notebook work. If not, try the following:

  • Go to Anaconda Navigator (the green circle!)
  • Launch a Jupyter Lab
  • In Jupyter Lab, open a Terminal window
  • Launch iPython in the terminal by typing ipython and hitting enter
  • Hit Up arrow
  • All your codes are stored in history and each cell compilation that you would've done in the past shows up there.
  • Copy+Paste it back to a new Jupyter notebook and you are ready to go again!

Solution 2:[2]

If you want to copy/paste.
After running terminal and ipython, page_up yo code you want. Click right button on a mouse, then Watch the elements code. Now you can select code, copy and paste it.

Solution 3:[3]

If you don't have Anaconda Navigator you can do access the same data the manual way:

  1. open a new ipython terminal
  2. type %history -g -f history.txt

This will output the entire history of edits which are saved in history.sqlite in your IPython profile folder. You can scroll down to the bottom to find your most recent edits.

You can also just explore the history.sqlite directly, which is located in your IPython profile. The profile should be inside .ipython in your user directory (windows and linux).

Thanks to Christian Long's answer on another question for providing this info.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1
Solution 2 Chandan
Solution 3