Logging in didn't work. Check if you typed something wrong: KeyError: 'access_token'
Using the last version, with the correct password (triple checked)
Also I suggest that if the twitter part worked well, you do not have to enter the info again if the mastodon part fail...
jerome@ns3274113:~/MastodonToTwitter$ python3.5 MastodonToTwitter.py
This appears to be your first time running MastodonToTwitter.
After some configuration, you'll be up and running in no time.
First of all, to talk to twitter, you'll need a twitter API key.
Usually, the application creator is supposed to make that, but with
an application that isn't a hosted service or a binary blob, with
the key in plain text, this is not easily possible.
You'll need to register an app on https://apps.twitter.com/ .
You may have to add a phone number to your twitter account to be able
to do this.
Once you are done (make sure to allow your app write permissions),
go to your apps 'Keys and Tokens' page and enter the info from there
here.
Twitter Consumer Key (API Key): xxx
Twitter Consumer Secret (API Secret): xxx
Twitter Access Token: xxx
Twitter Access Token Secret: xxx
Alright, trying to connect to twitter with those credentials...
Great! Twitter access works! With mastodon, the situation is a bit easier,
all you'll have to do is enter your username (that you log in to mastodon
with, this is usually your e-mail) and password.
Mastodon server (press Enter for mastodon.social): https://mastodon.xyz
Mastodon Username (e-mail): [email protected]
Mastodon Password:
You already have Mastodon server set up, so we're skipping that step.
You already have an app set up, so we're skipping that step.
Traceback (most recent call last):
File "/home/jerome/.local/lib/python3.5/site-packages/mastodon/Mastodon.py", line 146, in log_in
self.access_token = response['access_token']
KeyError: 'access_token'
Logging in didn't work. Check if you typed something wrong
and make sure you are connected to the internet.
Mastodon server (press Enter for mastodon.social): https://
Sanity check: Is your 2FA turned on? If it is, it doesn't work with 2FA at the moment.
No it is not
@jrmgx what version of Mastodon.py are you using?
Mine is
Name: Mastodon.py
Version: 1.0.5
Summary: Python wrapper for the Mastodon API
Home-page: https://github.com/halcy/Mastodon.py
Author: Lorenz Diener
Author-email: [email protected]
License: MIT
Location: /usr/local/lib/python3.6/site-packages
Requires: dateutils, requests```
Sorry, I should have read your OP closer, @jrmgx. If you are using the latest version, that error you got isn't possible.
The relevant line where you got the KeyError is:
try:
response = self.__api_request('POST', '/oauth/token', params, do_ratelimiting = False)
self.access_token = response['access_token']
except:
raise MastodonIllegalArgumentError('Invalid user name, password or scopes.')
As you can see, it should have been an MastodonIllegalArgumentError instead. So I'm wondering how you managed to get a KeyError.
Mastodon.py (1.0.6)
Also I'm always getting the last version of this repo with git pull
That sounds, weirdly enough, like a file io problem, because for once, the twitter part SHOULD not run again if it has succeeded once...
from what I understand here: https://github.com/halcy/MastodonToTwitter/blob/master/MastodonToTwitter.py#L188 the files are written only after the success of both Twitter and Mastodon? The server has a good working file system and I don't have other issues with it.
Oh, whoops. They are. I thought I had it set to write each set of files after they're done. That should be fixed.
That doesn't help with the original Problem, though. Does the problem still occur?
I changed the instance to another one and it works well
This may be worth reproducing for the sake of tracking down potential weird bugs - could you tell us which instance you tried that didn't work?
faulty: mastodon.xyz and the one what works now is mamot.fr
I have the same problem with a personal instance, toots.evilchi.li. Works fine with mastodon.social.
The full response is:
{'error': 'invalid_client', 'error_description': 'Client authentication failed due to unknown client, no client authentication included, or unsupported authentication method.'}