you are viewing a single comment's thread
view the rest of the comments
[–] 1 point 6 months ago

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
  • source
  • parent