commit 9c02a18feb40ce9f19b6cbd6a0434e506691baed from: Aleksey Ryndin date: Tue Jan 28 11:08:13 2025 UTC Fix after lint commit - 86729cc95e7f5ff6c502de20b2685f190eee8910 commit + 9c02a18feb40ce9f19b6cbd6a0434e506691baed blob - 51cf5e91dd283ac2b99f2a20bf51e149c488eb70 (mode 644) blob + /dev/null --- index.gmi +++ /dev/null @@ -1,77 +0,0 @@ -# Агрегатор "Катастеризм" ("Katasterismos") - -Агрегатор русскоязычных gemini-публикаций "Катастеризм" ("Katasterismos"), отображающий перекрестные ссылки между публикациями. - -## Работающий экземпляр агрегатора - -Результат ежедневной работы агрегатора доступен по следующему адресу: - -=> gemini://pub.phreedom.club/~katasterismos/ - -## Идея агрегатора - -Идея была нагло украдена из ветки обсуждений "Реквестирую русскоязычный аналог Cosmos" на GSR: -=> gemini://geminispace.ru/s/74/ Реквестирую русскоязычный аналог Cosmos - агрегатор, который составляет треды из ссылающихся на кого-то ещё посты. - -## Исходный код - -Код агрегатора написан на Python3 и доступен в git-репозитории: -``` -ssh://anonymous@got.any-key.press/katasterismos -``` -=> https://got.any-key.press/?action=summary&path=katasterismos.git Web интерфейс к git репозиторию - -=> gemini://any-key.press/tt/welcome.gmi Сделано в соответствии с духом Тривиальных Технологий - -## Ленты публикаций агрегатора - -Ниже приведены ссылки, на которые подписан проект "Катастеризм". - -Критерии коллекции: -* русскоязычные содержимое (хотя бы частично) -* содержимое соответствует формату "Subscribing to Gemini pages" - -=> gemini://geminiprotocol.net/docs/companion/subscription.gmi Subscribing to Gemini pages - -Вы всегда можете помочь актуализировать этот список: напишите письмо на электронную почту -``` -katasterismos@to.any-key.press -``` -=> mailto:katasterismos@to.any-key.press - -### [LINKS] Ленты публикаций, за которыми следит агрегатор - -=> gemini://academia.fzrw.info/ru/blog -=> gemini://academia.fzrw.info/ru/encyclopedia -=> gemini://academia.fzrw.info/ru/publications -=> gemini://alexey.shpakovsky.ru/rulog/ -=> gemini://any-key.press/vgi/atom2gemfeed/?gemini%3A%2F%2Fany-key.press%2Fatom.xml -=> gemini://armitage.flounder.online/gemlog/ -=> gemini://any-key.press/vgi/atom2gemfeed/?gemini%3A%2F%2Fbasnja.ru%2Fatom.xml -=> gemini://bbs.geminispace.org/s/russian?feed -=> gemini://byzoni.org/gemlog.gmi -=> gemini://causa-arcana.com/ru/blog/feed.gmi -=> gemini://gemini.quietplace.xyz/~razzlom/gemlog/ -=> gemini://gemlog.blue/users/3550/ -=> gemini://gemlog.blue/users/DaVINCIs23/ -=> gemini://gemlog.blue/users/KindFoxie/ -=> gemini://gemlog.blue/users/abrbus/ -=> gemini://gemlog.blue/users/antcating/ -=> gemini://gemlog.blue/users/cu8wllwp/ -=> gemini://gemlog.blue/users/freedom/ -=> gemini://gemlog.blue/users/musu_pilseta/ -=> gemini://gemlog.stargrave.org/ -=> gemini://hugeping.ru/ -=> gemini://any-key.press/vgi/atom2gemfeed/?gemini%3A%2F%2Fhugeping.ru%2Fmicro%2Fatom.xml -=> gemini://karabas.flounder.online/gemlog -=> gemini://kotobank.ch/~merlin/feed_ru.gmi -=> gemini://muu-online.ru/ -=> gemini://parthen.smol.pub/ -=> gemini://polyserv.xyz/ -=> gemini://pub.phreedom.club/~kornilovnet/glog/ -=> gemini://pub.phreedom.club/~tolstoevsky/glog/ -=> gemini://sn4il.site/ -=> gemini://spline-online.ru/ -=> gemini://sysrq.in/ru/gemlog/ -=> gemini://tilde.team/~runation/Post/post.gmi -=> gemini://topotun.dynu.com/blog/ blob - 01e0fa00f9401e52306626d36d62acf90487bd63 blob + b254180720a9f1c9b3577872ecd75ec13860ab36 --- katasterismos.py +++ katasterismos.py @@ -1,11 +1,12 @@ -from dataclasses import dataclass, field +from dataclasses import dataclass from datetime import date, datetime, timedelta from email.message import Message from pathlib import Path -from socket import create_connection, gaierror +from socket import create_connection from ssl import SSLContext, SSLError, PROTOCOL_TLS_CLIENT, CERT_NONE from urllib.parse import urlparse, urljoin, uses_relative, uses_netloc + # for urljoin: uses_relative.append("gemini") uses_netloc.append("gemini")