diff --git a/konfluks/hashtag.py b/konfluks/hashtag.py
index ff29707..39c2a00 100644
--- a/konfluks/hashtag.py
+++ b/konfluks/hashtag.py
@@ -11,19 +11,19 @@ instance = "https://social.lumbung.space"
email = ""
password = ""
hashtags = [
- "documentafifteen",
- "harvestedbyputra",
- "jalansesama",
- "lumbungdotspace",
- "majelisakakbar",
- "majelisakbar",
- "warungkopi",
- "lumbungkios",
- "kassel_ecosystem",
- "ruruhaus",
- "offbeatentrack_kassel",
- "lumbungofpublishers",
- "lumbungkiosproducts",
+ "documentafifteen"#,
+ # "harvestedbyputra",
+ # "jalansesama",
+ # "lumbungdotspace",
+ # "majelisakakbar",
+ # "majelisakbar",
+ # "warungkopi",
+ # "lumbungkios",
+ # "kassel_ecosystem",
+ # "ruruhaus",
+ # "offbeatentrack_kassel",
+ # "lumbungofpublishers",
+ # "lumbungkiosproducts",
]
@@ -60,6 +60,21 @@ def download_media(post_directory, media_attachments):
with open(os.path.join(post_directory, image), "wb") as img_file:
shutil.copyfileobj(response.raw, img_file)
print("Downloaded cover image", image)
+ elif item["type"] == "video":
+ video = localize_media_url(item["url"])
+ if not os.path.exists(os.path.join(post_directory, video)):
+ # download video file
+ response = requests.get(item["url"], stream=True)
+ with open(os.path.join(post_directory, video), "wb") as video_file:
+ shutil.copyfileobj(response.raw, video_file)
+ print("Downloaded video in post", video)
+ if not os.path.exists(os.path.join(post_directory, "thumbnail.png")):
+ #download video preview
+ response = requests.get(item["preview_url"], stream=True)
+ with open(os.path.join(post_directory, "thumbnail.png"), "wb") as thumbnail:
+ shutil.copyfileobj(response.raw, thumbnail)
+ print("Downloaded thumbnail for", video)
+
def create_post(post_directory, post_metadata):
@@ -78,7 +93,6 @@ def create_post(post_directory, post_metadata):
post_metadata["account"]["display_name"] = name
env.filters["localize_media_url"] = localize_media_url
env.filters["filter_mastodon_urls"] = filter_mastodon_urls
-
template = env.get_template("hashtag.md")
with open(os.path.join(post_directory, "index.html"), "w") as f:
@@ -130,7 +144,7 @@ def main():
timeline
) # returns all the rest n.b. can take a while because of rate limit
- for post_metadata in timeline:
+ for post_metadata in timeline[:6]:
post_dir = os.path.join(hashtag_dir, str(post_metadata["id"]))
# if there is a post in the feed we dont already have locally, make it
if str(post_metadata["id"]) not in all_existing_posts:
diff --git a/konfluks/templates/hashtag.md b/konfluks/templates/hashtag.md
index 4a61a7a..1148b79 100644
--- a/konfluks/templates/hashtag.md
+++ b/konfluks/templates/hashtag.md
@@ -5,13 +5,25 @@ authors: ["{{ post_metadata.account.display_name }}"]
contributors: ["{{ post_metadata.account.acct}}"]
avatar: {{ post_metadata.account.avatar }}
categories: ["shouts"]
-images: [{% for i in post_metadata.media_attachments %} {{ i.url }}, {% endfor %}]
title: {{ post_metadata.account.display_name }}
tags: [{% for i in post_metadata.tags %} "{{ i.name }}", {% endfor %}]
+images: [{% for i in post_metadata.media_attachments %}{% if i.type == "image" %}"{{ i.url | localize_media_url }}", {%endif%}{% endfor %}]
+videos: [{% for i in post_metadata.media_attachments %}{% if i.type == "video" %}"{{ i.url | localize_media_url }}", {%endif%}{% endfor %}]
---
{% for item in post_metadata.media_attachments %}
+{% if item.type == "image" %}
+{% endif %}
+{% endfor %}
+
+{% for item in post_metadata.media_attachments %}
+{% if item.type == "video" %}
+
+{% endif %}
{% endfor %}
{{ post_metadata.content | filter_mastodon_urls }}