pstuifzand / ekster

microsub server
GNU General Public License v3.0
27 stars 4 forks source link

Support xmlUrl during OPML import #37

Closed martymcguire closed 4 years ago

martymcguire commented 4 years ago

Importing with ek import opml subscriptions-file.opml will fail on any entry that does not contain an htmlUrl attribute with the message "Missing url on second row item".

However, OPML feeds exported by some services include multiple URL attributes or may not use htmlUrl for the "machine-readable" URL for an entry.

For example, podcast app Overcast's export includes htmlUrl for the "human-readable" web page for a podcast, and the actual RSS feed for a podcast is in xmlUrl.

Similarly, YouTube's subscription manager (export button at the bottom of the page) uses the xmlUrl attribute for the URL of the RSS feed for a YouTube channel. The htmlUrl attribute is not present.

A workaround for YouTube is to load up the subscriptions export file in a text editor and find-replace "xmlUrl" with "htmlUrl". But, it'd be nice if ek could find xmlUrl (at least as a fallback).

pstuifzand commented 4 years ago

I made a change to the import command, so that it also looks at the xmlUrl attribute.

@martymcguire How do you build/get ek?

martymcguire commented 4 years ago

Incredible, thank you!

To be honest it looks like I installed ek in December 2018, so I really don't remember. It's in $HOME/go/bin/ek so I assume I did it with go get -u p83.nl/go/ekster/cmd/ek as suggested by the README.

I just (re-?)ran go get -u p83.nl/go/ekster/cmd/ek to update and it seems to have worked after I adjusted $HOME/go/src/willnorris.com/go/microformats/ to the main branch instead of master. :man_shrugging:

Thanks again for the update. And for this great microsub tool!