J'ai changé l'icône en utilisant mastodon.py
.
from mastodon import Mastodon
mastodon = Mastodon(
access_token = "your_access_token",
api_base_url = 'https://qiitadon.com'
)
mastodon.account_update_credentials(avatar="path_to_image.xxx")
Elle a été reflétée la première fois, mais elle ne s'est pas reflétée lorsque j'ai changé l'image et l'ai exécutée à nouveau. ** **
Je ne sais pas si c'est une spécification Qiitadon ou Mastodon, mais si je change l'icône dans l'API
Cela signifie que si vous souhaitez remplacer l'icône par une nouvelle, vous devrez la télécharger avec un nom d'image que vous n'avez jamais utilisé auparavant.
Dans le cas de mastodon.py
, cela ressemble à ceci:
avatar_file_name = "mastodonpyupload_" + mimetypes.guess_extension(avatar_mime_type)
Il est probable qu'elle ne se soit pas reflétée comme prévu à partir de la deuxième fois car elle a été décidée quel que soit le nom de l'image locale.
Accédez directement à l'API Mastodon. Utilisez le nom de l'image locale pour le téléchargement. Si vous souhaitez refléter une nouvelle image, utilisez un nom d'image que vous n'avez jamais utilisé auparavant.
import requests
url = "https://qiitadon.com/api/v1/accounts/update_credentials"
token = "your_access_token"
headers = {"Authorization": "Bearer " + token}
file_name = "path_to_image.xxx"
file_data = open(file_name, "rb").read()
mime_type = "image/xxx"
files = {"avatar": (file_name, file_data, mime_type)}
requests.patch(url, headers=headers, files=files)
Si la bibliothèque d'une autre langue n'a pas ce problème, elle peut être utilisée.