Merge remote-tracking branch 'origin/master'

# Conflicts:
#	backend/app_be/views/twitter_api.py
This commit is contained in:
Marco Zeisler
2021-05-04 20:41:34 +02:00
6 changed files with 103 additions and 49 deletions
+49 -25
View File
@@ -4,7 +4,10 @@ from datetime import datetime
import twitter
import os
from app_be.models import Tweet
from dotenv import load_dotenv
from django.conf import settings
logger = logging.getLogger(__name__)
@@ -25,34 +28,11 @@ class twitter_api:
@staticmethod
def get_last_six_tweets():
last_six = api.GetUserTimeline(screen_name='waecmg4',count=6,exclude_replies=True,include_rts=False)
last_six = api.GetUserTimeline(screen_name='waecmg4', count=6, exclude_replies=True, include_rts=False)
logger.debug("type(last_six): {}".format(type(last_six)))
response = []
for tweet in last_six:
logger.debug("Tweet: {}".format(tweet))
parsed_date = datetime.strptime(tweet.created_at,"%a %b %d %H:%M:%S +0000 %Y")
tweet_date = datetime.strftime(parsed_date,"%d.%m.%y %H:%M")
if tweet.urls:
twitter_url = tweet.urls[0].expanded_url
else:
twitter_url = "No url for tweet found"
response.append({'icon': None,'text':tweet.text,'url':twitter_url,'created_date':tweet_date, 'tweet_id':tweet.id})
return response
@staticmethod
def get_more_tweets(twitter_id):
last_six = api.GetUserTimeline(screen_name='waecmg4', count=6, exclude_replies=True, include_rts=False, max_id=twitter_id)
response = []
for tweet in last_six:
logger.debug("Tweet: {}".format(tweet))
@@ -64,8 +44,52 @@ class twitter_api:
else:
twitter_url = "No url for tweet found"
tmp_text = str(tweet.text)
end = tmp_text.find(": http")
tmp_text = tmp_text[0:end]
backend_tweet: Tweet = Tweet.objects.filter(text=tmp_text)
if not backend_tweet:
icon = "http://localhost:8000/media/default-icon.png"
else:
icon = "http://localhost:8000/media/feed-icons/" + os.path.basename(backend_tweet[0].icon.file.name)
response.append({'icon': icon, 'text': tweet.text, 'url': twitter_url, 'created_date': tweet_date,
'tweet_id': tweet.id})
return response
@staticmethod
def get_more_tweets(twitter_id):
last_six = api.GetUserTimeline(screen_name='waecmg4', count=7, exclude_replies=True, include_rts=False,
max_id=twitter_id)
response = []
for tweet in last_six[1:]:
logger.debug("Tweet: {}".format(tweet))
parsed_date = datetime.strptime(tweet.created_at, "%a %b %d %H:%M:%S +0000 %Y")
tweet_date = datetime.strftime(parsed_date, "%d.%m.%y %H:%M")
if tweet.urls:
twitter_url = tweet.urls[0].expanded_url
else:
twitter_url = "No url for tweet found"
tmp_text = str(tweet.text)
end = tmp_text.find(": http")
tmp_text = tmp_text[0:end]
backend_tweet: Tweet = Tweet.objects.filter(text=tmp_text)
if not backend_tweet:
icon = "http://localhost:8000/media/default-icon.png"
else:
icon = "http://localhost:8000/media/feed-icons/" + os.path.basename(backend_tweet[0].icon.file.name)
response.append(
{'icon': None, 'text': tweet.text, 'url': twitter_url, 'created_date': tweet_date,
{'icon': icon, 'text': tweet.text, 'url': twitter_url, 'created_date': tweet_date,
'tweet_id': tweet.id})
return response
+1 -1
View File
@@ -49,7 +49,7 @@ class twitter_bot(threading.Thread):
# preparing tweet
new_tweet = Tweet()
new_tweet.feed = feed
new_tweet.icon = feed.icon
new_tweet.text = current.title
if 'published' in current: