finalized
This commit is contained in:
parent
b15578bc7c
commit
9b4bfa34e2
5
.gitignore
vendored
5
.gitignore
vendored
@ -1,7 +1,6 @@
|
|||||||
.idea
|
.idea
|
||||||
venv
|
venv
|
||||||
mail/__pycache__
|
|
||||||
bearer.json
|
bearer.json
|
||||||
mail_credentials.json
|
mail_credentials.json
|
||||||
painter/__pycache__
|
test.*
|
||||||
test.png
|
__pycache__/
|
||||||
|
1
Pipfile
1
Pipfile
@ -7,7 +7,6 @@ verify_ssl = true
|
|||||||
|
|
||||||
[packages]
|
[packages]
|
||||||
requests = "*"
|
requests = "*"
|
||||||
pillow = "*"
|
|
||||||
|
|
||||||
[requires]
|
[requires]
|
||||||
python_version = "3.8"
|
python_version = "3.8"
|
||||||
|
36
Pipfile.lock
generated
36
Pipfile.lock
generated
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"_meta": {
|
"_meta": {
|
||||||
"hash": {
|
"hash": {
|
||||||
"sha256": "d1925e0b4d1174e1ffb7d76338272b6b9aa0bf4d958c89448f76a1e35bc4007f"
|
"sha256": "acbc8c4e7f2f98f1059b2a93d581ef43f4aa0c9741e64e6253adff8e35fbd99e"
|
||||||
},
|
},
|
||||||
"pipfile-spec": 6,
|
"pipfile-spec": 6,
|
||||||
"requires": {
|
"requires": {
|
||||||
@ -37,40 +37,6 @@
|
|||||||
],
|
],
|
||||||
"version": "==2.10"
|
"version": "==2.10"
|
||||||
},
|
},
|
||||||
"pillow": {
|
|
||||||
"hashes": [
|
|
||||||
"sha256:006de60d7580d81f4a1a7e9f0173dc90a932e3905cc4d47ea909bc946302311a",
|
|
||||||
"sha256:0a2e8d03787ec7ad71dc18aec9367c946ef8ef50e1e78c71f743bc3a770f9fae",
|
|
||||||
"sha256:0eeeae397e5a79dc088d8297a4c2c6f901f8fb30db47795113a4a605d0f1e5ce",
|
|
||||||
"sha256:11c5c6e9b02c9dac08af04f093eb5a2f84857df70a7d4a6a6ad461aca803fb9e",
|
|
||||||
"sha256:2fb113757a369a6cdb189f8df3226e995acfed0a8919a72416626af1a0a71140",
|
|
||||||
"sha256:4b0ef2470c4979e345e4e0cc1bbac65fda11d0d7b789dbac035e4c6ce3f98adb",
|
|
||||||
"sha256:59e903ca800c8cfd1ebe482349ec7c35687b95e98cefae213e271c8c7fffa021",
|
|
||||||
"sha256:5abd653a23c35d980b332bc0431d39663b1709d64142e3652890df4c9b6970f6",
|
|
||||||
"sha256:5f9403af9c790cc18411ea398a6950ee2def2a830ad0cfe6dc9122e6d528b302",
|
|
||||||
"sha256:6b4a8fd632b4ebee28282a9fef4c341835a1aa8671e2770b6f89adc8e8c2703c",
|
|
||||||
"sha256:6c1aca8231625115104a06e4389fcd9ec88f0c9befbabd80dc206c35561be271",
|
|
||||||
"sha256:795e91a60f291e75de2e20e6bdd67770f793c8605b553cb6e4387ce0cb302e09",
|
|
||||||
"sha256:7ba0ba61252ab23052e642abdb17fd08fdcfdbbf3b74c969a30c58ac1ade7cd3",
|
|
||||||
"sha256:7c9401e68730d6c4245b8e361d3d13e1035cbc94db86b49dc7da8bec235d0015",
|
|
||||||
"sha256:81f812d8f5e8a09b246515fac141e9d10113229bc33ea073fec11403b016bcf3",
|
|
||||||
"sha256:895d54c0ddc78a478c80f9c438579ac15f3e27bf442c2a9aa74d41d0e4d12544",
|
|
||||||
"sha256:8de332053707c80963b589b22f8e0229f1be1f3ca862a932c1bcd48dafb18dd8",
|
|
||||||
"sha256:92c882b70a40c79de9f5294dc99390671e07fc0b0113d472cbea3fde15db1792",
|
|
||||||
"sha256:95edb1ed513e68bddc2aee3de66ceaf743590bf16c023fb9977adc4be15bd3f0",
|
|
||||||
"sha256:b63d4ff734263ae4ce6593798bcfee6dbfb00523c82753a3a03cbc05555a9cc3",
|
|
||||||
"sha256:bd7bf289e05470b1bc74889d1466d9ad4a56d201f24397557b6f65c24a6844b8",
|
|
||||||
"sha256:cc3ea6b23954da84dbee8025c616040d9aa5eaf34ea6895a0a762ee9d3e12e11",
|
|
||||||
"sha256:cc9ec588c6ef3a1325fa032ec14d97b7309db493782ea8c304666fb10c3bd9a7",
|
|
||||||
"sha256:d3d07c86d4efa1facdf32aa878bd508c0dc4f87c48125cc16b937baa4e5b5e11",
|
|
||||||
"sha256:d8a96747df78cda35980905bf26e72960cba6d355ace4780d4bdde3b217cdf1e",
|
|
||||||
"sha256:e38d58d9138ef972fceb7aeec4be02e3f01d383723965bfcef14d174c8ccd039",
|
|
||||||
"sha256:eb472586374dc66b31e36e14720747595c2b265ae962987261f044e5cce644b5",
|
|
||||||
"sha256:fbd922f702582cb0d71ef94442bfca57624352622d75e3be7a1e7e9360b07e72"
|
|
||||||
],
|
|
||||||
"index": "pypi",
|
|
||||||
"version": "==8.0.1"
|
|
||||||
},
|
|
||||||
"requests": {
|
"requests": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:b3559a131db72c33ee969480840fff4bb6dd111de7dd27c8ee1f820f4f00231b",
|
"sha256:b3559a131db72c33ee969480840fff4bb6dd111de7dd27c8ee1f820f4f00231b",
|
||||||
|
20
css.json
20
css.json
@ -1,20 +0,0 @@
|
|||||||
{
|
|
||||||
"dimensions": {
|
|
||||||
"x": 600,
|
|
||||||
"y": 300
|
|
||||||
},
|
|
||||||
"background": {
|
|
||||||
"r": 57,
|
|
||||||
"g": 63,
|
|
||||||
"b": 77
|
|
||||||
},
|
|
||||||
"text": {
|
|
||||||
"font": "font/open-sans-v18-latin-regular.ttf",
|
|
||||||
"size": 18,
|
|
||||||
"color": {
|
|
||||||
"r": 255,
|
|
||||||
"g": 255,
|
|
||||||
"b": 255
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -21,7 +21,7 @@ class mail:
|
|||||||
if system().lower() == "windows":
|
if system().lower() == "windows":
|
||||||
path = Path("mail_credentials.json")
|
path = Path("mail_credentials.json")
|
||||||
else:
|
else:
|
||||||
path = Path("/etc/twpng/mail_credentials.json")
|
path = Path("/etc/tw2hugo/mail_credentials.json")
|
||||||
|
|
||||||
with path.open("r") as fp:
|
with path.open("r") as fp:
|
||||||
credentials = j_load(fp)
|
credentials = j_load(fp)
|
||||||
|
@ -6,11 +6,20 @@
|
|||||||
# * _repo : https://git.tuxstash.de/gothseidank/tweet2png
|
# * _repo : https://git.tuxstash.de/gothseidank/tweet2png
|
||||||
# * _license : This project is under MIT License
|
# * _license : This project is under MIT License
|
||||||
# *********************************************************************************/
|
# *********************************************************************************/
|
||||||
from mail import mail
|
|
||||||
from painter import painter
|
|
||||||
from twitter import twitter
|
from twitter import twitter
|
||||||
from sys import exit
|
from sys import exit
|
||||||
|
from platform import system
|
||||||
|
import json
|
||||||
|
|
||||||
twitter = twitter()
|
twitter = twitter()
|
||||||
painter(twitter.get_latest_tweet(), twitter.handle())
|
tweet = twitter.get_latest_tweet()
|
||||||
|
handle = twitter.handle()
|
||||||
|
|
||||||
|
if system().lower() == "windows":
|
||||||
|
with open('latest_tweet.json', 'w') as fp:
|
||||||
|
json.dump(tweet, fp, indent=4, sort_keys=True)
|
||||||
|
if system().lower() == "linux":
|
||||||
|
with open('/home/git/tuxstash.de/data/latest_tweet.json', 'w') as fp:
|
||||||
|
json.dump(tweet, fp, indent=4, sort_keys=True)
|
||||||
|
|
||||||
exit(0)
|
exit(0)
|
@ -24,7 +24,7 @@ class twitter:
|
|||||||
if system().lower() == "windows":
|
if system().lower() == "windows":
|
||||||
self.path = Path("bearer.json")
|
self.path = Path("bearer.json")
|
||||||
else:
|
else:
|
||||||
self.path = Path("/etc/twpng/bearer.json")
|
self.path = Path("/etc/tw2hugo/twitter.json")
|
||||||
|
|
||||||
try:
|
try:
|
||||||
with self.path.open('r') as fp:
|
with self.path.open('r') as fp:
|
||||||
@ -37,10 +37,13 @@ class twitter:
|
|||||||
def handle(self):
|
def handle(self):
|
||||||
return self.credentials['twitter-handle']
|
return self.credentials['twitter-handle']
|
||||||
|
|
||||||
|
def output_location(self):
|
||||||
|
return self.credentials['output-location']
|
||||||
|
|
||||||
def get_latest_tweet(self) -> Union[str, None]:
|
def get_latest_tweet(self) -> Union[str, None]:
|
||||||
try:
|
try:
|
||||||
get_url = f"https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=" \
|
get_url = f"https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=" \
|
||||||
f"{self.credentials['twitter-handle']}&count=1&trim_user=1"
|
f"{self.credentials['twitter-handle']}&count=1&tweet_mode=extended"
|
||||||
|
|
||||||
header = {
|
header = {
|
||||||
"Authorization": f"Bearer {self.credentials['bearer']}"
|
"Authorization": f"Bearer {self.credentials['bearer']}"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user