From 41f0a5c31f33601f31dac05baf84f457c73e5b69 Mon Sep 17 00:00:00 2001 From: Fred Boniface Date: Sun, 5 Nov 2023 15:21:52 +0000 Subject: [PATCH] Begin work on Mastodon/Pixelfed publishing --- image_processing.py | 2 +- load_config.py | 3 +-- main.py | 5 +++++ publish_flickr.py | 1 - publish_pixelfed.py | 8 ++++++++ 5 files changed, 15 insertions(+), 4 deletions(-) create mode 100644 publish_pixelfed.py diff --git a/image_processing.py b/image_processing.py index d89715d..d56164d 100644 --- a/image_processing.py +++ b/image_processing.py @@ -1,7 +1,7 @@ import pyexiv2 def get_image_data(path: str): - print(f"Opening file: {path}") + print(f"Reading metadata: {path}") img = pyexiv2.Image(path) xmp = img.read_xmp() create_date = xmp.get('Xmp.xmp.CreateDate', 'N/A') diff --git a/load_config.py b/load_config.py index b36a665..e5c8eae 100644 --- a/load_config.py +++ b/load_config.py @@ -1,5 +1,4 @@ import os, toml from dotenv import load_dotenv -config = toml.load("conf.toml") -print(config) \ No newline at end of file +config = toml.load("conf.toml") \ No newline at end of file diff --git a/main.py b/main.py index a7114c3..47aaf90 100644 --- a/main.py +++ b/main.py @@ -37,8 +37,13 @@ def main(): file_data.append(item_data) if load_config.config['flickr']['enable']: + print("Flickr publishing enabled") import publish_flickr publish_flickr.upload(file_data) + + if load_config.config['pixelfed']['enable']: + print("Pixelfed publishing enabled") + import publish_pixelfed def list_files_in_directory(directory): top_level_items = os.listdir(directory) diff --git a/publish_flickr.py b/publish_flickr.py index c24f30f..b7f29fd 100644 --- a/publish_flickr.py +++ b/publish_flickr.py @@ -7,7 +7,6 @@ flickr.authenticate_via_browser(perms='write') def upload(file_data: list): for file in file_data: - print(file) flickr.upload( filename = file['path'], title = file['title'], diff --git a/publish_pixelfed.py b/publish_pixelfed.py new file mode 100644 index 0000000..51398a1 --- /dev/null +++ b/publish_pixelfed.py @@ -0,0 +1,8 @@ +import load_config + +from mastodon import Mastodon + +Mastodon.create_app("social_photos", api_base_url=load_config.config['pixelfed']['server'], user_agent="social-photos") +Mastodon.log_in(code=load_config['pixelfed']['token']) + +mastodon = Mastodon(access_token = 'pytooter_usercred.secret') \ No newline at end of file