add common hashtags

pull/2/head
GeneralHurricane 2023-01-13 16:30:15 -06:00
parent 22e2c11743
commit 56737088ed
1 changed files with 24 additions and 6 deletions

View File

@ -1,4 +1,5 @@
from io import BytesIO
import random
import re
import tweepy
from automeme import TextLine, get_rdrama, strip_markdown
@ -64,6 +65,14 @@ def hashtagify(string, api):
input = re.sub(f" {hashtag} ", f" #{hashtag} ", input)
return input
def add_common_hashtags(tweet, post):
post = post.lower()
for k, v in hashdict.items():
if k in post:
ht = random.choice(v)
tweet = f"{tweet} {ht}"
return tweet
def get_tweet_text(post):
rdrama_url = post['permalink']
title = post['title']
@ -71,12 +80,12 @@ def get_tweet_text(post):
text_space = TWEET_LENGTH - URL_LENGTH - 1
actual_title = re.sub(r":[^ ]*:", "", title) #remove marseys
actual_title = hashtagify(actual_title, api)
if (len(title) > text_space):
actual_title = actual_title[0:text_space-3] + "..."
else:
actual_title = actual_title
actual_title = add_common_hashtags(actual_title, f"{title}\n{post['body']}")
if (len(actual_title) > text_space):
actual_title = actual_title[0:text_space-4] + "..."
return f"{actual_title} {rdrama_url}"
tweet = f"{actual_title} {rdrama_url}"
return tweet
def post_top_scoring_link(rdrama, api):
post = None
@ -94,5 +103,14 @@ def post_top_scoring_link(rdrama, api):
url = f"https://twitter.com/drama_meme/status/{tweet.id}"
rdrama.reply_to_post(post['id'], f"Nice post, bro! [I posted it to twitter]({url}).")
# dictionary of common popular topics and related hashtags
# search for the first phrase and choose one of the second
hashdict = {
'terf mommy': ['#IStandWithJKRowling'],
'rowling': ['#IStandWithJKRowling'],
'hogwarts': ['#HogwartsLegacy'],
'ukraine': ['#Ukraine'],
}
if __name__ == "__main__":
post_top_scoring_link(rdrama, api)