Wrapper around the Mega API

Overview

python-mega

Build Status

Overview

Wrapper around the Mega API. Based on the work of Julien Marchand.

Installation

Install using pip, including any optional packages you want...

$ pip install python-mega

...or clone the project from github.

$ git clone git@juanriaza/python-mega.git
$ cd python-mega
$ pip install -r requirements.txt

How to use it?

With your credentials:

from mega import Mega

email = '[email protected]'
password = 'olakase'

m = Mega.from_credentials(email, password)

…or you can use an ephemeral account:

m = Mega.from_ephemeral()

And fire some requests:

# list of files
files = m.get_files()
# download a file
m.download_file(file_id, file_key)
# upload a file
m.uploadfile('/home/kim/mega/secret_plans')
# download from an url
m.download_from_url('https://mega.co.nz/#!wYo3AYZC!Zwi1f3ANtYwKNOc07fwuN1enOoRj4CreFouuGqi4D6Y')

Running the tests

$ ./tests.py

Changelog

0.1.0

31th Jan 2012

  • First release.

Acknowledgements

  • Many thanks to Julien Marchand for the initial work.
  • All of the contributors to this project.
Comments
  • SSL error:

    SSL error: "SSL23_GET_SERVER_HELLO:unknown protocol"

    Hello, I get the following error when trying to login to mega, on a machine running WinXP-sp3, python 2.7:

    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "C:\Python27\lib\site-packages\mega\mega.py", line 31, in login
        self._login_user(email, password)
      File "C:\Python27\lib\site-packages\mega\mega.py", line 39, in _login_user
        resp = self._api_request({'a': 'us', 'user': email, 'uh': uh})
      File "C:\Python27\lib\site-packages\mega\mega.py", line 110, in _api_request
        timeout=self.timeout)
      File "C:\Python27\lib\site-packages\requests\api.py", line 88, in post
        return request('post', url, data=data, **kwargs)
      File "C:\Python27\lib\site-packages\requests\api.py", line 44, in request
        return session.request(method=method, url=url, **kwargs)
      File "C:\Python27\lib\site-packages\requests\sessions.py", line 456, in request
        resp = self.send(prep, **send_kwargs)
      File "C:\Python27\lib\site-packages\requests\sessions.py", line 559, in send
        r = adapter.send(request, **kwargs)
      File "C:\Python27\lib\site-packages\requests\adapters.py", line 382, in send
        raise SSLError(e, request=request)
    requests.exceptions.SSLError: [Errno 1] _ssl.c:507: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
    

    I gave a try to the requests_toolbelt SSLadapter, using something like:

    from requests_toolbelt import SSLAdapter
    s = requests.Session()
    s.mount('https://', SSLAdapter(ssl.PROTOCOL_SSLv3))
    s.post(url, params=params, data=data)
    

    this time I got this message:

    requests.exceptions.SSLError: [Errno 1] _ssl.c:507: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number
    

    Any idea of what's happening here and how to work around this issue? Thanks in advance for your help

    opened by xiconet 3
  • Command

    Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/4c/qjnnzbf17w7dbttpwsjr1_vw0000gn/T/pip-build-bioziida/python-mega/

    When I try to install the package, I get the following error $ pip install python-mega

      Using cached python-mega-0.1.0.tar.gz
        Complete output from command python setup.py egg_info:
        Traceback (most recent call last):
          File "<string>", line 1, in <module>
          File "/private/var/folders/4c/qjnnzbf17w7dbttpwsjr1_vw0000gn/T/pip-build-bioziida/python-mega/setup.py", line 48
            print "You probably want to also tag the version now:"
                                                                 ^
        SyntaxError: Missing parentheses in call to 'print'. Did you mean print(int "You probably want to also tag the version now:")?
        
        ----------------------------------------
    Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/4c/qjnnzbf17w7dbttpwsjr1_vw0000gn/T/pip-build-bioziida/python-mega/
    

    My python version is as follow: $ python --version Python 3.6.3 :: Anaconda, Inc.

    opened by madchucky 2
  • can't install your lib

    can't install your lib

    Installing collected packages: urllib3, idna, chardet, certifi, requests, URLObject, pycrypto Running setup.py install for URLObject ... done Running setup.py install for pycrypto ... error ERROR: Command errored out with exit status 1: command: 'c:\users\by_azade\appdata\local\programs\python\python38-32\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\By_Azade\\AppData\\Local\\Temp\\pip-install-5yvcnmpf\\pycrypto\\setup.py'"'"'; __file__='"'"'C:\\Users\\By_Azade\\AppData\\Local\\Temp\\pip-install-5yvcnmpf\\pycrypto\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\By_Azade\AppData\Local\Temp\pip-record-xbss2lib\install-record.txt' --single-version-externally-managed --compile cwd: C:\Users\By_Azade\AppData\Local\Temp\pip-install-5yvcnmpf\pycrypto\ Complete output (153 lines): running install running build running build_py creating build creating build\lib.win32-3.8 creating build\lib.win32-3.8\Crypto copying lib\Crypto\pct_warnings.py -> build\lib.win32-3.8\Crypto copying lib\Crypto\__init__.py -> build\lib.win32-3.8\Crypto creating build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\hashalgo.py -> build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\HMAC.py -> build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\MD2.py -> build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\MD4.py -> build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\MD5.py -> build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\RIPEMD.py -> build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\SHA.py -> build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\SHA224.py -> build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\SHA256.py -> build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\SHA384.py -> build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\SHA512.py -> build\lib.win32-3.8\Crypto\Hash copying lib\Crypto\Hash\__init__.py -> build\lib.win32-3.8\Crypto\Hash creating build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\AES.py -> build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\ARC2.py -> build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\ARC4.py -> build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\blockalgo.py -> build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\Blowfish.py -> build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\CAST.py -> build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\DES.py -> build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\DES3.py -> build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\PKCS1_OAEP.py -> build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\PKCS1_v1_5.py -> build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\XOR.py -> build\lib.win32-3.8\Crypto\Cipher copying lib\Crypto\Cipher\__init__.py -> build\lib.win32-3.8\Crypto\Cipher creating build\lib.win32-3.8\Crypto\Util copying lib\Crypto\Util\asn1.py -> build\lib.win32-3.8\Crypto\Util copying lib\Crypto\Util\Counter.py -> build\lib.win32-3.8\Crypto\Util copying lib\Crypto\Util\number.py -> build\lib.win32-3.8\Crypto\Util copying lib\Crypto\Util\py3compat.py -> build\lib.win32-3.8\Crypto\Util copying lib\Crypto\Util\randpool.py -> build\lib.win32-3.8\Crypto\Util copying lib\Crypto\Util\RFC1751.py -> build\lib.win32-3.8\Crypto\Util copying lib\Crypto\Util\winrandom.py -> build\lib.win32-3.8\Crypto\Util copying lib\Crypto\Util\_number_new.py -> build\lib.win32-3.8\Crypto\Util copying lib\Crypto\Util\__init__.py -> build\lib.win32-3.8\Crypto\Util creating build\lib.win32-3.8\Crypto\Random copying lib\Crypto\Random\random.py -> build\lib.win32-3.8\Crypto\Random copying lib\Crypto\Random\_UserFriendlyRNG.py -> build\lib.win32-3.8\Crypto\Random copying lib\Crypto\Random\__init__.py -> build\lib.win32-3.8\Crypto\Random creating build\lib.win32-3.8\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\FortunaAccumulator.py -> build\lib.win32-3.8\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\FortunaGenerator.py -> build\lib.win32-3.8\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\SHAd256.py -> build\lib.win32-3.8\Crypto\Random\Fortuna copying lib\Crypto\Random\Fortuna\__init__.py -> build\lib.win32-3.8\Crypto\Random\Fortuna creating build\lib.win32-3.8\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\fallback.py -> build\lib.win32-3.8\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\nt.py -> build\lib.win32-3.8\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\posix.py -> build\lib.win32-3.8\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\rng_base.py -> build\lib.win32-3.8\Crypto\Random\OSRNG copying lib\Crypto\Random\OSRNG\__init__.py -> build\lib.win32-3.8\Crypto\Random\OSRNG creating build\lib.win32-3.8\Crypto\SelfTest copying lib\Crypto\SelfTest\st_common.py -> build\lib.win32-3.8\Crypto\SelfTest copying lib\Crypto\SelfTest\__init__.py -> build\lib.win32-3.8\Crypto\SelfTest creating build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\common.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_AES.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_ARC2.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_ARC4.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_Blowfish.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_CAST.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_DES.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_DES3.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_pkcs1_15.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_pkcs1_oaep.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\test_XOR.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher copying lib\Crypto\SelfTest\Cipher\__init__.py -> build\lib.win32-3.8\Crypto\SelfTest\Cipher creating build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\common.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_HMAC.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_MD2.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_MD4.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_MD5.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_RIPEMD.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA224.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA256.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA384.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\test_SHA512.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash copying lib\Crypto\SelfTest\Hash\__init__.py -> build\lib.win32-3.8\Crypto\SelfTest\Hash creating build\lib.win32-3.8\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_AllOrNothing.py -> build\lib.win32-3.8\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_chaffing.py -> build\lib.win32-3.8\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_KDF.py -> build\lib.win32-3.8\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\test_rfc1751.py -> build\lib.win32-3.8\Crypto\SelfTest\Protocol copying lib\Crypto\SelfTest\Protocol\__init__.py -> build\lib.win32-3.8\Crypto\SelfTest\Protocol creating build\lib.win32-3.8\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_DSA.py -> build\lib.win32-3.8\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_ElGamal.py -> build\lib.win32-3.8\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_importKey.py -> build\lib.win32-3.8\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\test_RSA.py -> build\lib.win32-3.8\Crypto\SelfTest\PublicKey copying lib\Crypto\SelfTest\PublicKey\__init__.py -> build\lib.win32-3.8\Crypto\SelfTest\PublicKey creating build\lib.win32-3.8\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\test_random.py -> build\lib.win32-3.8\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\test_rpoolcompat.py -> build\lib.win32-3.8\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\test__UserFriendlyRNG.py -> build\lib.win32-3.8\Crypto\SelfTest\Random copying lib\Crypto\SelfTest\Random\__init__.py -> build\lib.win32-3.8\Crypto\SelfTest\Random creating build\lib.win32-3.8\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\test_FortunaAccumulator.py -> build\lib.win32-3.8\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\test_FortunaGenerator.py -> build\lib.win32-3.8\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\test_SHAd256.py -> build\lib.win32-3.8\Crypto\SelfTest\Random\Fortuna copying lib\Crypto\SelfTest\Random\Fortuna\__init__.py -> build\lib.win32-3.8\Crypto\SelfTest\Random\Fortuna creating build\lib.win32-3.8\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_fallback.py -> build\lib.win32-3.8\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_generic.py -> build\lib.win32-3.8\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_nt.py -> build\lib.win32-3.8\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_posix.py -> build\lib.win32-3.8\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\test_winrandom.py -> build\lib.win32-3.8\Crypto\SelfTest\Random\OSRNG copying lib\Crypto\SelfTest\Random\OSRNG\__init__.py -> build\lib.win32-3.8\Crypto\SelfTest\Random\OSRNG creating build\lib.win32-3.8\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_asn1.py -> build\lib.win32-3.8\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_Counter.py -> build\lib.win32-3.8\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_number.py -> build\lib.win32-3.8\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\test_winrandom.py -> build\lib.win32-3.8\Crypto\SelfTest\Util copying lib\Crypto\SelfTest\Util\__init__.py -> build\lib.win32-3.8\Crypto\SelfTest\Util creating build\lib.win32-3.8\Crypto\SelfTest\Signature copying lib\Crypto\SelfTest\Signature\test_pkcs1_15.py -> build\lib.win32-3.8\Crypto\SelfTest\Signature copying lib\Crypto\SelfTest\Signature\test_pkcs1_pss.py -> build\lib.win32-3.8\Crypto\SelfTest\Signature copying lib\Crypto\SelfTest\Signature\__init__.py -> build\lib.win32-3.8\Crypto\SelfTest\Signature creating build\lib.win32-3.8\Crypto\Protocol copying lib\Crypto\Protocol\AllOrNothing.py -> build\lib.win32-3.8\Crypto\Protocol copying lib\Crypto\Protocol\Chaffing.py -> build\lib.win32-3.8\Crypto\Protocol copying lib\Crypto\Protocol\KDF.py -> build\lib.win32-3.8\Crypto\Protocol copying lib\Crypto\Protocol\__init__.py -> build\lib.win32-3.8\Crypto\Protocol creating build\lib.win32-3.8\Crypto\PublicKey copying lib\Crypto\PublicKey\DSA.py -> build\lib.win32-3.8\Crypto\PublicKey copying lib\Crypto\PublicKey\ElGamal.py -> build\lib.win32-3.8\Crypto\PublicKey copying lib\Crypto\PublicKey\pubkey.py -> build\lib.win32-3.8\Crypto\PublicKey copying lib\Crypto\PublicKey\RSA.py -> build\lib.win32-3.8\Crypto\PublicKey copying lib\Crypto\PublicKey\_DSA.py -> build\lib.win32-3.8\Crypto\PublicKey copying lib\Crypto\PublicKey\_RSA.py -> build\lib.win32-3.8\Crypto\PublicKey copying lib\Crypto\PublicKey\_slowmath.py -> build\lib.win32-3.8\Crypto\PublicKey copying lib\Crypto\PublicKey\__init__.py -> build\lib.win32-3.8\Crypto\PublicKey creating build\lib.win32-3.8\Crypto\Signature copying lib\Crypto\Signature\PKCS1_PSS.py -> build\lib.win32-3.8\Crypto\Signature copying lib\Crypto\Signature\PKCS1_v1_5.py -> build\lib.win32-3.8\Crypto\Signature copying lib\Crypto\Signature\__init__.py -> build\lib.win32-3.8\Crypto\Signature Skipping optional fixer: buffer Skipping optional fixer: idioms Skipping optional fixer: set_literal Skipping optional fixer: ws_comma running build_ext warning: GMP or MPIR library not found; Not building Crypto.PublicKey._fastmath. building 'Crypto.Random.OSRNG.winrandom' extension error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/downloads/ ---------------------------------------- ERROR: Command errored out with exit status 1: 'c:\users\by_azade\appdata\local\programs\python\python38-32\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\By_Azade\\AppData\\Local\\Temp\\pip-install-5yvcnmpf\\pycrypto\\setup.py'"'"'; __file__='"'"'C:\\Users\\By_Azade\\AppData\\Local\\Temp\\pip-install-5yvcnmpf\\pycrypto\\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\By_Azade\AppData\Local\Temp\pip-record-xbss2lib\install-record.txt' --single-version-externally-managed --compile Check the logs for full command output.

    opened by muhammedfurkan 1
  • PyCrypto is dead

    PyCrypto is dead

    Some people have issues installing PyCrypto, and the module is officially not maintained any more. PyCryptodome is well maintained and mostly compatible.

    See: https://github.com/dlitz/pycrypto/issues/238

    opened by RasmusMathiesen 0
  • Cannot install the python-mega package

    Cannot install the python-mega package

    Hello, I can't manage to install python-mega, i'm stuck on this error (pip install python-mega): Command /usr/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/pycrypto/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-nqU9gL-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/pycrypto I know that pycrypto is a little bit broken, so i tried to install pycryptodome and pycryptodomex but it's not changing anything.

    Is there something that i can do in order to fix this ? Thanks

    opened by GuillaumeOrlando 0
  • ImportError: cannot import name 'Mega'

    ImportError: cannot import name 'Mega'

    Hi,

    I've cloned and installed the dependencies for python-mega but I've got the following error when executing this script with both python 2 and python 3

    from mega import Mega
    
    email = 'my-email'
    password = 'my-password'
    
    m = Mega.from_credentials(email, password)
    
    files = m.get_files()
    
    for file in files:
        print(file)
    

    Here's the error I get :

    ImportError: cannot import name 'Mega'

    opened by lucasmacori 2
  • Comment big-endian format, the unpacking operator, encryptor creation and encryption call

    Comment big-endian format, the unpacking operator, encryptor creation and encryption call

    1. I had to refresh the notion of endianness and found following video helpful https://www.youtube.com/watch?v=MEyV7moej-k I guess the idea here is to have the code independent of the platform it is run on, right @juanriaza ?

    2. I struggled to understand the unpacking operator '*' until I found following video https://www.youtube.com/watch?v=YWY4BZi_o28. Cool python feature.

    3. Is the package pycrypto the right one for AES import? Few comments added from there. https://pypi.python.org/pypi/pycrypto "PyCrypto is written and tested using Python version 2.1 through 3.3. Python 1.5.2 is not supported." Good simple use of pycrypto is demonstrated here https://www.youtube.com/watch?v=fqjdXMu4ZAQ

    opened by madchucky 0
  • Make the substitution more explicit

    Make the substitution more explicit

    Different way of substituting the length of the string in format string as the %-formatting is called the "old %-formatting" in the documentation, be it for python:

    • 2.7 https://docs.python.org/2.7/library/string.html?highlight=string#module-string or
    • 3.6 https://docs.python.org/3.6/library/string.html?highlight=string#module-string
    opened by madchucky 0
Owner
Juan Riaza
A Software Engineer based in Spain. Loving Python, Django, Web Scraping and complex data pipelines.
Juan Riaza
An API wrapper around the pythonanywhere's API.

pyaww An API wrapper around the pythonanywhere's API. The name stands for pythonanywherewrapper. 100% api coverage most of the codebase is documented

null 7 Dec 11, 2022
An API wrapper around Discord API.

NeoCord This project is work in progress not for production use. An asynchronous API wrapper around Discord API written in Python. Features Modern API

Izhar Ahmad 14 Jan 3, 2022
An API wrapper around the pythonanywhere's API.

pyaww An API wrapper around the pythonanywhere's API. The name stands for pythonanywherewrapper. 100% API coverage Most of the codebase is documented

null 7 Dec 11, 2022
A light wrapper around FedEx's SOAP API.

Python FedEx SOAP API Module Author: Greg Taylor, Radek Wojcik Maintainer: Python FedEx Developers License: BSD Status: Stable What is it? A light wra

null 155 Dec 16, 2022
A Python wrapper around the OpenWeatherMap web API

PyOWM A Python wrapper around OpenWeatherMap web APIs What is it? PyOWM is a client Python wrapper library for OpenWeatherMap (OWM) web APIs. It allow

Claudio Sparpaglione 740 Dec 18, 2022
A Python wrapper around the Soundcloud API

soundcloud-python A friendly wrapper around the Soundcloud API. Installation To install soundcloud-python, simply: pip install soundcloud Or if you'r

SoundCloud 83 Dec 12, 2022
Wrapper around the latest Tuenti API

python-tuenti Overview Wrapper around the latest Tuenti API. Installation Install using pip, including any optional packages you want... $ pip install

Juan Riaza 10 Mar 7, 2022
A Python wrapper around the Twitter API.

Python Twitter A Python wrapper around the Twitter API. By the Python-Twitter Developers Introduction This library provides a pure Python interface fo

Mike Taylor 3.4k Jan 1, 2023
Wrapper around the UPS API for creating shipping labels and fetching a package's tracking status.

ClassicUPS: A Useful UPS Library ClassicUPS is an Apache2 Licensed wrapper around the UPS API for creating shipping labels and fetching a package's tr

Jay Goel 55 Dec 12, 2022
A Python wrapper around the Twitter API.

Python Twitter A Python wrapper around the Twitter API. By the Python-Twitter Developers Introduction This library provides a pure Python interface fo

Mike Taylor 3.4k Jan 1, 2023
An asyncio Python wrapper around the Discord API, forked off of Rapptz's Discord.py.

Novus A modern, easy to use, feature-rich, and async ready API wrapper for Discord written in Python. A full fork of Rapptz's Discord.py library, with

Voxel Fox 60 Jan 3, 2023
An async-ready Python wrapper around FerrisChat's API.

FerrisWheel An async-ready Python wrapper around FerrisChat's API. Installation Instructions Linux: $ python3.9 -m pip install -U ferriswheel Python 3

FerrisChat 8 Feb 8, 2022
A Python wrapper around the Pushbullet API to send different types of push notifications to your phone or/and computer.

pushbullet-python A Python wrapper around the Pushbullet API to send different types of push notifications to your phone or/and computer. Installation

Janu Lingeswaran 1 Jan 14, 2022
Simple Telegram Bot to Download and Upload Files From Mega.nz

Mega.nz-Bot Simple Telegram Bot to Download Files From Mega.nz and Upload It to Telegram Features All Mega.nz File Links supported No login required A

I'm Not A Bot #Left_TG 245 Jan 1, 2023
A Telegram Bot to Play Audio in Voice Chats With Youtube and Deezer support. Supports Live streaming from youtube Supports Mega Radio Fm Streamings

Bot To Stream Musics on PyTGcalls with Channel Support. A Telegram Bot to Play Audio in Voice Chats With Supports Live streaming from youtube and Mega

Shamil Habeeb 37 Dec 15, 2022
A Simple Telegram Bot By @AsmSafone to Download Files From Mega.nz and Upload It to Telegram

MegaDL-Bot A Simple Telegram Bot By @AsmSafone to Download Files From Mega.nz and Upload It to Telegram Features No Login Required All Mega.nz File Li

SAF ONE 92 Dec 2, 2022
Modified Version of mega.py package for Pyrogram Bots

Pyro Mega.py Python library for the Mega.co.nz API, currently supporting: login uploading downloading deleting searching sharing renaming moving files

I'm Not A Bot #Left_TG 10 Aug 3, 2022
A telegram bot to download mega.nz links. (made with pyrogram).

Mega Link Downloader Bot This is a telegram bot to download mega.nz links and return them as files/videos - Made by a 100% noob! (When I mean noob I r

null 171 Dec 27, 2022
A Simple Telegram Bot that can Download Files From Mega.nz and Upload It to Telegram

MegaDL-Bot A Simple Telegram Bot By @mrkpbots to Download Files From Mega.nz and Upload It to Telegram Features No Login Required All Mega.nz File Lin

MRKP BOTS 5 Feb 20, 2022