Fix space in usernames

This commit is contained in:
Zeva Rose 2022-04-19 11:02:25 -06:00
parent 939458bba9
commit 09676da538

View file

@ -3,6 +3,7 @@ import asyncio
from datetime import datetime, timedelta, timezone
from logging import Logger
from typing import List
from urllib.parse import quote_plus
import tweepy
from dis_snek import Snake
@ -23,7 +24,7 @@ def tweet_embeds(tweet: tweepy.models.Status) -> List[Embed]:
Args:
tweet: Tweet to build embed
"""
url = f"https://twitter.com/{tweet.user.name}/status/{tweet.id}"
url = f"https://twitter.com/{quote_plus(tweet.user.name)}/status/{tweet.id}"
entities = tweet.__dict__.get("extended_entities", {})
media = entities.get("media", [])
@ -35,7 +36,7 @@ def tweet_embeds(tweet: tweepy.models.Status) -> List[Embed]:
text = tweet.text
if subtweet := tweet.__dict__.get("quoted_status", None):
subuser = subtweet.user
text += f"\n\n> [@{subuser.name}](https://twitter.com/{subuser.name})"
text += f"\n\n> [@{subuser.name}](https://twitter.com/{quote_plus(subuser.name)})"
text += f"\n> {subtweet.text}"
if entites := subtweet.__dict__.get("extended_entities", {}):
submedia = entites.get("media", [])
@ -150,7 +151,7 @@ async def twitter(bot: Snake, logger: Logger) -> None:
# Delete invalid accounts (no follows)
for account in accounts_to_delete:
logger.info(f"Account {account.handle} has no followers, removing")
logger.info(f"{account.handle} has no followers, removing")
await account.delete()
# Only check once a minute