aboutsummaryrefslogtreecommitdiffstats
path: root/services.py
diff options
context:
space:
mode:
authorjwansek <eddie.atten.ea29@gmail.com>2021-03-06 01:50:05 +0000
committerjwansek <eddie.atten.ea29@gmail.com>2021-03-06 01:50:05 +0000
commit7cc501c5efde9da7c5e4dbfd854cdeb80a8e0ce9 (patch)
treed44c8d2ece059ba9e3f497b95817380e0d19cf1b /services.py
parent287034916bef5878a5565aec4141216fa6f133e6 (diff)
downloadboymoder.blog-7cc501c5efde9da7c5e4dbfd854cdeb80a8e0ce9.tar.gz
boymoder.blog-7cc501c5efde9da7c5e4dbfd854cdeb80a8e0ce9.zip
added twitter on index page
Diffstat (limited to 'services.py')
-rw-r--r--services.py31
1 files changed, 29 insertions, 2 deletions
diff --git a/services.py b/services.py
index 69c0eae..2cfe394 100644
--- a/services.py
+++ b/services.py
@@ -1,9 +1,13 @@
+from dataclasses import dataclass
+from io import StringIO
+from lxml import html
import multiprocessing
+import pihole as ph
import qbittorrent
+import requests
import datetime
import docker
import clutch
-import pihole as ph
import queue
import json
import time
@@ -109,6 +113,29 @@ def get_pihole_stats():
"last_updated": str(datetime.datetime.fromtimestamp(pihole.gravity_last_updated["absolute"]))
}
+# @timeout
+def get_recent_tweets(numToGet):
+ tweets = []
+ domain = "http://" + app.CONFIG.get("nitter", "domain")
+ with app.database.Database() as db:
+ for title, url in db.get_header_links():
+ if title == "twitter":
+ break
+ tree = html.fromstring(requests.get(url).content)
+ for i, tweetUrlElement in enumerate(tree.xpath('//*[@class="tweet-link"]'), 0):
+ if i > 0:
+ tweets.append((
+ domain + tweetUrlElement.get("href"),
+ tweetUrlElement.getparent().find_class("tweet-content media-body")[0].text
+ ))
+ if len(tweets) >= numToGet:
+ break
+ return tweets + [(url, "view all tweets...")]
+
+
if __name__ == "__main__":
- print(get_qbit_stats()) \ No newline at end of file
+ for tweet in get_recent_tweets():
+ print(tweet.get_url())
+ print(tweet.get_text())
+ print() \ No newline at end of file