Python 3 library for downloading (googledrive,mega,mediafire,directurl)
Pyobidl is a fast library for downloading (googledrive,mega,mediafire,directurl) using requests,mega.py
- Asyncs methods
- Suport Mega Files and Folders Urls
- Suport Mediafire File Urls
- Suport Google Drive Files Urls
- Suport Direct Files Urls
- Suport Mega authenticated login
- Support for proxies/VPN for accessing blocked services
Pyobidl requires an installation of Python 3.6 or greater, as well as pip. (Pip is typically bundled with Python To install from the source with pip:
pip install https://github.com/ObisoftDev/pyobidl/archive/master.zip
- Using pyobidl in a Python script
from pyobidl.downloader import Downloader
from pyobidl.utils import sizeof_fmt
def progress(dl:Downloader,filename:str,index:int,total:int,speed:int,time:int,args:tuple=None):
print(f'{filename} {sizeof_fmt(index)}/{sizeof_fmt(total)} ({sizeof_fmt(speed)})',end='\r')
pass
dl = Downloader(destpath='')
ouptut = dl.download_url(url='https://mega.nz/#F!IlxWwQJY!ZkcrapwfMxOjhhGXn5jEqQ',progressfunc=progress)
- Using pyobidl with Mega authentication
from pyobidl.downloader import Downloader
from pyobidl.utils import sizeof_fmt
def progress(dl:Downloader,filename:str,index:int,total:int,speed:int,time:int,args:tuple=None):
print(f'{filename} {sizeof_fmt(index)}/{sizeof_fmt(total)} ({sizeof_fmt(speed)})',end='\r')
pass
# Initialize with Mega credentials
dl = Downloader(destpath='', mega_email='your_email@example.com', mega_password='your_password')
ouptut = dl.download_url(url='https://mega.nz/#F!IlxWwQJY!ZkcrapwfMxOjhhGXn5jEqQ',progressfunc=progress)
- Using pyobidl with proxies (for accessing Mega when blocked)
from pyobidl.downloader import Downloader
from pyobidl.utils import sizeof_fmt
def progress(dl:Downloader,filename:str,index:int,total:int,speed:int,time:int,args:tuple=None):
print(f'{filename} {sizeof_fmt(index)}/{sizeof_fmt(total)} ({sizeof_fmt(speed)})',end='\r')
pass
# Configure proxies
proxies = {
'http': 'http://your-proxy-server:port',
'https': 'http://your-proxy-server:port'
}
# Initialize with proxies
dl = Downloader(destpath='', proxies=proxies)
ouptut = dl.download_url(url='https://mega.nz/#F!IlxWwQJY!ZkcrapwfMxOjhhGXn5jEqQ',progressfunc=progress)
- Using async pyobidl in a Python script
from pyobidl.downloader import AsyncDownloader
from pyobidl.utils import sizeof_fmt
async def progress(dl:AsyncDownloader,filename:str,index:int,total:int,speed:int,time:int,args:tuple=None):
print(f'{filename} {sizeof_fmt(index)}/{sizeof_fmt(total)} ({sizeof_fmt(speed)})',end='\r')
pass
dl = AsyncDownloader(destpath='')
ouptut = await dl.download_url(url='https://mega.nz/#F!IlxWwQJY!ZkcrapwfMxOjhhGXn5jEqQ',progressfunc=progress)
- Using async pyobidl with Mega authentication
from pyobidl.downloader import AsyncDownloader
from pyobidl.utils import sizeof_fmt
async def progress(dl:AsyncDownloader,filename:str,index:int,total:int,speed:int,time:int,args:tuple=None):
print(f'{filename} {sizeof_fmt(index)}/{sizeof_fmt(total)} ({sizeof_fmt(speed)})',end='\r')
pass
# Initialize with Mega credentials
dl = AsyncDownloader(destpath='', mega_email='your_email@example.com', mega_password='your_password')
ouptut = await dl.download_url(url='https://mega.nz/#F!IlxWwQJY!ZkcrapwfMxOjhhGXn5jEqQ',progressfunc=progress)