Using Two-factor Authentication with github3.py
GitHub recently added support for Two-factor Authentication to
and shortly thereafter added support for it on
api.github.com. In version
0.8, github3.py also added support for it and you can use it right now.
To use Two-factor Authentication, you must define your own function that will return your one time authentication code. You then provide that function when logging in with github3.py.
import github3 try: # Python 2 prompt = raw_input except NameError: # Python 3 prompt = input def my_two_factor_function(): code = '' while not code: # The user could accidentally press Enter before being ready, # let's protect them from doing that. code = prompt('Enter 2FA code: ') return code g = github3.login('sigmavirus24', 'my_password', two_factor_callback=my_two_factor_function)
Then each time the API tells github3.py it requires a Two-factor Authentication
code, github3.py will call
my_two_factor_function which prompt you for it.