Skip to content
forked from Sraq-Zit/gfile

A python module to download and upload from gigafile.nu

License

Notifications You must be signed in to change notification settings

fireattack/gfile

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyPI Version

gfile

A python CLI/module to download and upload from gigafile.

Note: PyPI package name is gigafile since gfile wasn't available. Both CLI and module names are still gfile.

A major update from the original. Highlights:

  • Fixed multi-thread uploading (and made sure each threads finish in order so the final file is not broken)
  • Fixed download filename issue
  • Some refactoring and QoL changes.

Install

$ pip install -U gigafile

or

$ pip install -U git+https://github.com/fireattack/gfile.git

Usage

CLI

$ gfile upload path/to/file

$ gfile download https://66.gigafile.nu/0320-b36ec21d4a56b143537e12df7388a5367

$ gfile -h
usage: Gfile [-h] [-p] [-o OUTPUT] [--aria2 [ARIA2]] [-n THREAD_NUM] [-s CHUNK_SIZE] [-m CHUNK_COPY_SIZE] [-t TIMEOUT] [-k KEY] {download,upload} uri

positional arguments:
  {download,upload}     upload or download
  uri                   filename to upload or url to download

options:
  -h, --help            show this help message and exit
  -p, --hide-progress   hide progress bar
  -o OUTPUT, --output OUTPUT
                        output filename for download (default: use original name)
  --aria2 [ARIA2]       download with aria2. You can also specify optional arguments (default: "-x10 -s10", make sure to quote). `-o` is already automatically included.
  -n THREAD_NUM, --thread-num THREAD_NUM
                        number of threads used for upload [default: 8]
  -s CHUNK_SIZE, --chunk-size CHUNK_SIZE
                        chunk size per upload in bytes; note: chunk_size*thread will be loaded into memory [default: 100MB]
  -m CHUNK_COPY_SIZE, --copy-size CHUNK_COPY_SIZE
                        specifies size to copy the main file into pieces [default: 1MB]
  -t TIMEOUT, --timeout TIMEOUT
                        specifies timeout time (in seconds) [default: 10]
  -k KEY, --key KEY, --password KEY
                        specifies the key/password for the file

Module

Import

from gfile import GFile

Download

filename = GFile('https://XX.gigafile.nu/YYY').download()

Upload

url = GFile('path/to/file', progress=True).upload().get_download_page()

About

A python module to download and upload from gigafile.nu

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%