I'm using ipython notebook by connecting to a server I don't know how to download a thing (data frame, .csv file,... for example) programatically to my local computer. Because I can't specific declare the path like C://user//... It will be downloaded to their machine not mine


Solution 1:

Run this in separate cell in one of the notebooks:

!tar cvfz zipname.tar.gz *

To cover more folders up the tree, write ../ before the * for every step up the directory.

tar cvfz zipname.tar.gz ../../*

The file zipname.tar.gz will be saved in the same folder as your notebook.

Also if files size is too large execute the following in same notebook block

!split -b 200m allfiles.tar.gz allfiles.tar.gz.part

Alternatively you can use this extension https://github.com/data-8/nbzip

Solution 2:

If you are using Jupyter notebook, you can go to the "File" tab on the top left part of the notebook and click "Open". It shows you the content of the current directory. You can select your data file with different format (CSV, text, etc) and then you can download it in your local computer.

Open tab in Jupyter notebook

enter image description here

Download your desired file

enter image description here

Solution 3:

Based on another answer, the following function will export a pandas data frame to a csv file and it will provide you with a link to download the csv file in your browser:

def csv_download_link(df, csv_file_name, delete_prompt=True):
    """Display a download link to load a data frame as csv from within a Jupyter notebook"""
    df.to_csv(csv_file_name, index=False)
    from IPython.display import FileLink
    display(FileLink(csv_file_name))
    if delete_prompt:
        a = input('Press enter to delete the file after you have downloaded it.')
        import os
        os.remove(csv_file_name)

To get a link to a csv file, enter or import the above function and use the code below in a jupyter notebook cell :

csv_download_link(df, 'df.csv')

By default the argument delete_prompt=True makes sure that once you have downloaded the csv file, it gets deleted so the file doesn't pollute the git repository where you naturally archive your notebooks (converted in markdown format with jupytext for meaningful diffs).

Solution 4:

The download option did not appear for me.

The solution was to open the file (which could not be correctly read as it was a binary file), and to download it from the notebook's notepad.