I’ve coded this and I’m a retard. Relative portion from a method:
from urllib.request import urlopen
foundrss = Falsefor line in urlopen(self.channelurl):
for word in line.split():
if foundrss:
ifnotself.feedurl:
self.feedurl = word.split(b'"')[1].decode("utf-8")
if'xml'notinself.feedurl:
raise Exception("'xml' not found in feedurl")
elifnotself.channelname: # feed url is set, extract the channel name that comes soon afterif word.startswith(b'content='): # start collecting wordsself.channelname = [word.split(b'"')[1].decode("utf-8")]
if word.count(b'"') == 2: # channel name is a single wordself.channelname = self.channelname[0]
returnelse: # we have channelname started, just collect the rest of the words nowifb'"'in word: # get text to the left of "self.channelname.append(word.split(b'"')[0].decode("utf-8"))
self.channelname = ' '.join(self.channelname)
returnelse:
self.channelname.append(word.decode("utf-8"))
elif word == b'title="RSS"':
foundrss = True
These days you can probably vibe-code yourself the perfect RSS extension or even standalone app.
Might give it a shot actually.
I’ve coded this and I’m a retard. Relative portion from a method:
from urllib.request import urlopen foundrss = False for line in urlopen(self.channelurl): for word in line.split(): if foundrss: if not self.feedurl: self.feedurl = word.split(b'"')[1].decode("utf-8") if 'xml' not in self.feedurl: raise Exception("'xml' not found in feedurl") elif not self.channelname: # feed url is set, extract the channel name that comes soon after if word.startswith(b'content='): # start collecting words self.channelname = [word.split(b'"')[1].decode("utf-8")] if word.count(b'"') == 2: # channel name is a single word self.channelname = self.channelname[0] return else: # we have channelname started, just collect the rest of the words now if b'"' in word: # get text to the left of " self.channelname.append(word.split(b'"')[0].decode("utf-8")) self.channelname = ' '.join(self.channelname) return else: self.channelname.append(word.decode("utf-8")) elif word == b'title="RSS"': foundrss = True