add common hashtags
parent
22e2c11743
commit
56737088ed
|
@ -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)
|
Loading…
Reference in New Issue