Improve redirection mechanism

This commit is contained in:
Schimon Jehudah 2023-12-29 01:35:20 +00:00
parent 76b2713223
commit 8e3e06b36b
5 changed files with 290 additions and 20 deletions

View file

@ -1,7 +1,48 @@
invidious:
anonymousoverflow:
clearnet:
- https://ao.phreedom.club
- https://overflow.hostux.net
- https://ao.foss.wtf
- https://overflow.adminforge.de
- https://overflow.lunar.icu
- https://anonymousoverflow.esmailelbob.xyz
- https://overflow.smnz.de
- https://ao.vern.cc
- https://overflow.777.tf
- https://code.whatever.social
- https://stackoverflow.vern.cc
- https://anonymousoverflow.vern.cc
- https://ao.bloatcat.tk
- https://se.chaotic.ninja
- https://anonymousoverflow.privacyfucking.rocks
- https://overflow.projectsegfau.lt
- https://anonoverflow.frontendfriendly.xyz
- https://overflow.fascinated.cc
i2p:
- http://vernmzgraj6aaoafmehupvtkkynpaa67rxcdj2kinwiy6konn6rq.b32.i2p
loki: []
tor:
- http://anonymousoverflow.esmail5pdn24shtvieloeedh7ehz3nrwcdivnfhfcedl7gf4kwddhkqd.onion
- http://ao.vernccvbvyi5qhfzyqengccj7lkove6bjot2xhh5kajhwvidqafczrad.onion
yggdrasil:
- http://[301:f69c:2017:b6b8::8]
hostname:
- youtu.be
- youtube.com
- stackoverflow.com
type:
- link
dumb:
clearnet:
- https://dumb.privacydev.net
- https://dm.vern.cc
- https://dumb.lunar.icu
- https://dumb.esmailelbob.xyz
hostname:
- genius.com
type:
- link
invidious:
clearnet:
- https://incogtube.com
- https://vid.puffyan.us
@ -108,10 +149,14 @@ invidious:
- http://w6ijuptxiku4xpnnaetxvnkc5vqcdu7mgns2u77qefoixi63vbvnpnqd.onion
yggdrasil:
- http://[200:168a:c80a:b258:1dfe:f920:4414:6897]
hostname:
- youtu.be
- youtube.com
type:
- feed
- link
librarian:
hostname:
- odysee.com
clearnet:
- https://librarian.pussthecat.org
- https://odysee.076.ne.jp
@ -132,11 +177,124 @@ librarian:
- http://5znbzx2xcymhddzekfjib3isgqq4ilcyxa2bsq6vqmnvbtgu4f776lqd.onion
- http://bxewpsswttslepw27w2hhxhlizwm7l7y54x3jw5cfrb64hb6lgc557ad.onion
yggdrasil: []
hostname:
- odysee.com
type:
- feed
- link
libreddit:
clearnet:
- https://libreddit.spike.codes
- https://libreddit.hu
- https://libreddit.nl
- https://libreddit.bus-hit.me
- https://libreddit.strongthany.cc
- https://libreddit.esmailelbob.xyz
- https://lr.riverside.rocks
- https://libreddit.40two.app
- https://libreddit.albony.xyz
- https://libreddit.domain.glass
- https://discuss.whatever.social
- https://libreddit.kavin.rocks
- https://libreddit.privacy.com.de
- https://libreddit.eu.org
- https://libreddit.bloatcat.tk
- https://libreddit.pabloferreiro.es
- https://lr.foss.wtf
- https://libreddit.no-logs.com
- https://lr.slipfox.xyz
- https://lr.creller.net
- https://libreddit.dcs0.hu
- https://l.opnxng.com
- https://libreddit.tux.pizza
- https://reddit.leptons.xyz
- https://reddit.baby
- https://snoo.habedieeh.re
- https://lr.4201337.xyz
- https://libreddit.private.coffee
- https://lr.artemislena.eu
- https://libreddit.privacyfucking.rocks
- https://libreddit.qwik.space
- https://farside.link/libreddit
- https://de.leddit.xyz
- https://leddit.xyz
- https://libreddit.alefvanoon.xyz
- https://libreddit.autarkic.org
- https://libreddit.awesomehub.io
- https://libreddit.crewz.me
- https://libreddit.database.red
- https://libreddit.datatunnel.xyz
- https://libreddit.de
- https://libreddit.dothq.co
- https://libreddit.drivet.xyz
- https://libreddit.flux.industries
- https://libreddit.igna.rocks
- https://libredd.it
- https://libreddit.jamiethalacker.dev
- https://libreddit.kylrth.com
- https://libreddit.lunar.icu
- https://libreddit.mutahar.rocks
- https://libreddit.northboot.xyz
- https://libreddit.pussthecat.org
- https://libreddit.silkky.cloud
- https://libreddit.some-things.org
- https://libreddit.sugoma.tk
- https://libreddit.tiekoetter.com
- https://libreddit.totaldarkness.net
- https://libreddit.winscloud.net
- https://libreddit.yonalee.eu
- https://lr.cowfee.moe
- https://lr.mint.lgbt
- https://lr.oversold.host
- https://lr.stilic.ml
- https://r.nf
- https://r.walkx.org
- https://reddi.tk
- https://reddit.artemislena.eu
- https://reddit.invak.id
- https://reddit.phii.me
- https://reddit.rtrace.io
- https://reddit.stuehieyr.com
- https://safereddit.com
- https://libreddit.nohost.network
- https://libreddit.projectsegfau.lt
- https://reddit.simo.sh
i2p:
- http://woo5ugmoomzbtaq6z46q4wgei5mqmc6jkafqfi5c37zni7xc4ymq.b32.i2p
loki: []
tor:
- http://spjmllawtheisznfs7uryhxumin26ssv2draj7oope3ok3wuhy43eoyd.onion
- http://qwikxxeiw4kgmml6vjw2bsxtviuwjce735dunai2djhu6q7qbacq73id.onion
- http://qwikxx4xqvhdyyazkrw7pwdpdppfnmn7j2n6cvq5zecm4atbppaslzad.onion
- http://ecue64ybzvn6vjzl37kcsnwt4ycmbsyf74nbttyg7rkc3t3qwnj7mcyd.onion
- http://fwhhsbrbltmrct5hshrnqlqygqvcgmnek3cnka55zj4y7nuus5muwyyd.onion
- http://inytumdgnri7xsqtvpntjevaelxtgbjqkuqhtf6txxhwbll2fwqtakqd.onion
- http://kphht2jcflojtqte4b4kyx7p2ahagv4debjj32nre67dxz7y57seqwyd.onion
- http://kzhfp3nvb4qp575vy23ccbrgfocezjtl5dx66uthgrhu7nscu6rcwjyd.onion
- http://lbrdtjaj7567ptdd4rv74lv27qhxfkraabnyphgcvptl64ijx2tijwid.onion
- http://libreddit.2syis2nnyytz6jnusnjurva4swlaizlnleiks5mjp46phuwjbdjqwgqd.onion
- http://ledditqo2mxfvlgobxnlhrkq4dh34jss6evfkdkb2thlvy6dn4f4gpyd.onion
- http://libreddit.lqs5fjmajyp7rvp4qvyubwofzi6d4imua7vs237rkc4m5qogitqwrgyd.onion
- http://libredoxhxwnmsb6dvzzd35hmgzmawsq5i764es7witwhddvpc2razid.onion
- http://ol5begilptoou34emq2sshf3may3hlblvipdjtybbovpb7c7zodxmtqd.onion
- http://liredejj74h5xjqr2dylnl5howb2bpikfowqoveub55ru27x43357iid.onion
yggdrasil: []
hostname:
- reddit.com
type:
- link
neuters:
clearnet:
- https://neuters.de
- https://neuters.privacyfucking.rocks
hostname:
- reuters.com
type:
- link
nitter:
hostname:
- twitter.com
- x.com
clearnet:
- https://nitter.hu
- https://nitter.actionsack.com
@ -207,3 +365,113 @@ nitter:
- http://qwikxx2erhx6qrymued6ox2qkf2yeogjwypqvzoif4fqkljixasr6oid.onion
- http://n.sneed4fmhevap3ci4xhf4wgkf72lwk275lcgomnfgwniwmqvaxyluuid.onion
yggdrasil: []
hostname:
- twitter.com
- x.com
type:
- feed
- link
proxitok:
clearnet:
- https://proxitok.lunar.icu
- https://tik.hostux.net
- https://proxitok.pabloferreiro.es
- https://proxitok.privacy.com.de
- https://tok.adminforge.de
- https://tok.habedieeh.re
- https://proxitok.pussthecat.org
- https://proxitok.privacyfucking.rocks
- https://cringe.whatever.social
- https://proxitok.esmailelbob.xyz
- https://proxitok.privacydev.net
- https://proxitok.pufe.org
- https://tok.artemislena.eu
- https://tok.thekitty.zone
- https://tiktok.chauvet.pro
- https://tt.vern.cc
- https://farside.link/proxitok
i2p:
- http://qr.vern.i2p
loki: []
tor: []
yggdrasil: []
hostname:
- tiktok.com
type:
- link
quetre:
clearnet:
- https://quetre.privacydev.net
- https://quetre.pufe.org
- https://que.wilbvr.me
- https://quetre.iket.me
- https://quetre.pussthecat.org
- https://quetre.tokhmi.xyz
- https://quetre.projectsegfau.lt
- https://quetre.esmailelbob.xyz
- https://quetre.odyssey346.dev
- ://ask.habedieeh.re
- https://quetre.marcopisco.com
- https://quetre.blackdrgn.nl
- https://quetre.lunar.icu
- https://quora.femboy.hu
- https://quora.vern.cc
- https://farside.link/quetre
- https://quetre.fascinated.cc
i2p: []
loki: []
tor:
- http://ask.habeehrhadazsw3izbrbilqajalfyqqln54mrja3iwpqxgcuxnus7eid.onion
- http://qr.vernccvbvyi5qhfzyqengccj7lkove6bjot2xhh5kajhwvidqafczrad.onion
- http://quetre.esmail5pdn24shtvieloeedh7ehz3nrwcdivnfhfcedl7gf4kwddhkqd.onion
- http://quetre.g4c3eya4clenolymqbpgwz3q3tawoxw56yhzk4vugqrl6dtu3ejvhjid.onion
- http://quora.cepyxplublbyw2f4axy4pyztfbxmf63lrt2c7uwv6wl4iixz53czload.onion
yggdrasil: []
hostname:
- quora.com
type:
- link
teddit:
clearnet:
- https://teddit.pussthecat.org
- https://teddit.zaggy.nl
- https://teddit.bus-hit.me
- https://teddit.adminforge.de
- https://incogsnoo.com
- https://teddit.hostux.net
- https://teddit.ggc-project.de
- https://teddit.httpjames.space
- https://snoo.ioens.is
- https://teddit.no-logs.com
- https://teddit.net
- https://i.opnxng.com
- https://tedd.it
- https://teddit.projectsegfau.lt
- https://reddit.lol
- https://rdt.trom.tf
- https://t.sneed.network
- https://farside.link/teddit
- https://teddit.alefvanoon.xyz
- https://teddit.domain.glass
- https://teddit.froth.zone
- https://teddit.namazso.eu
- https://teddit.sethforprivacy.com
- https://teddit.tinfoil-hat.net
- https://teddit.totaldarkness.net
- https://td.vern.cc
i2p:
- http://k62ptris7p72aborr4zoanee7xai6wguucveptwgxs5vbgt7qzpq.b32.i2p
- http://teddit.i2p
loki: []
tor:
- http://t.sneed4fmhevap3ci4xhf4wgkf72lwk275lcgomnfgwniwmqvaxyluuid.onion
- http://tedditfyn6idalzso5wam5qd3kdtxoljjhbrbbx34q2xkcisvshuytad.onion
yggdrasil:
- http://[200:5e4b:515c:e42b:3e73:6fbf:2f11:779d]
hostname:
- reddit.com
type:
- link

View file

@ -492,7 +492,7 @@ async def get_entry_unread(db_file, num=None):
# summary = "\n".join(summary)
link = result[2]
link = await remove_tracking_parameters(link)
link = (await replace_hostname(link)) or link
link = (await replace_hostname(link, "link")) or link
sql = (
"SELECT name "
"FROM feeds "

View file

@ -31,7 +31,7 @@ from urllib.parse import (
# proxies.yaml. Perhaps a better practice would be to have
# them separated. File proxies.yaml will remainas is in order
# to be coordinated with the dataset of project LibRedirect.
async def replace_hostname(url):
async def replace_hostname(url, url_type):
"""
Replace hostname.
@ -39,6 +39,8 @@ async def replace_hostname(url):
----------
url : str
URL.
url_type : str
"feed" or "link".
Returns
-------
@ -55,7 +57,7 @@ async def replace_hostname(url):
proxies = await config.get_list("proxies.yaml")
for proxy in proxies:
proxy = proxies[proxy]
if hostname in proxy["hostname"]:
if hostname in proxy["hostname"] and url_type in proxy["type"]:
select_proxy = random.choice(proxy["clearnet"])
parted_proxy = urlsplit(select_proxy)
protocol_new = parted_proxy.scheme

View file

@ -492,7 +492,6 @@ class Slixfeed(slixmpp.ClientXMPP):
# print("message")
# print(message)
if message["type"] in ("chat", "groupchat", "normal"):
action = 0
jid = message["from"].bare
if message["type"] == "groupchat":
# nick = message["from"][message["from"].index("/")+1:]

View file

@ -16,11 +16,12 @@ from slixfeed.datetime import current_time
import slixfeed.fetch as fetcher
import slixfeed.sqlite as sqlite
import slixfeed.task as task
import slixfeed.url as urlfixer
import slixfeed.url as uri
import slixfeed.xmpp.status as status
import slixfeed.xmpp.text as text
async def message(self, jid, message):
action = None
message_text = " ".join(message["body"].split())
if message["type"] == "groupchat":
message_text = message_text[1:]
@ -244,11 +245,11 @@ async def message(self, jid, message):
).format(url)
status.process_task_message(self, jid, status_message)
if url.startswith("feed:"):
url = urlfixer.feed_to_http(url)
# url_alt = await urlfixer.replace_hostname(url)
url = uri.feed_to_http(url)
# url_alt = await uri.replace_hostname(url, "feed")
# if url_alt:
# url = url_alt
url = (await urlfixer.replace_hostname(url)) or url
url = (await uri.replace_hostname(url, "feed")) or url
action = await initdb(
jid,
fetcher.add_feed,
@ -346,7 +347,7 @@ async def message(self, jid, message):
else:
action = "Missing value."
case _ if message_lowercase.startswith("join"):
muc = urlfixer.check_xmpp_uri(message_text[5:])
muc = uri.check_xmpp_uri(message_text[5:])
if muc:
"TODO probe JID and confirm it's a groupchat"
await self.join_muc(jid, muc)
@ -488,8 +489,8 @@ async def message(self, jid, message):
).format(url)
status.process_task_message(self, jid, status_message)
if url.startswith("feed:"):
url = urlfixer.feed_to_http(url)
url = (await urlfixer.replace_hostname(url)) or url
url = uri.feed_to_http(url)
url = (await uri.replace_hostname(url, "feed")) or url
match len(data):
case 1:
if url.startswith("http"):
@ -676,7 +677,7 @@ async def message(self, jid, message):
# TODO Send an invitation.
action = "Join xmpp:slixfeed@chat.woodpeckersnest.space?join"
case _ if message_lowercase.startswith("xmpp:"):
muc = urlfixer.check_xmpp_uri(message_text)
muc = uri.check_xmpp_uri(message_text)
if muc:
"TODO probe JID and confirm it's a groupchat"
await self.join_muc(jid, muc)