Gerando um arquivo OPML, depressa

por Walter Cruz on 12/03/2009
in Python

Hoje de manhã eu precisei transformar alguns links de um html para o formato OPML, para importar num wordpress. Operação fácil de se fazer, basta apenas a ferramenta certa, no meu caso, Python ;)

No links.txt, eu copiei/colei o trecho html que tinha os links da página que eu queria exportar em OPML.


from lxml import etree
parser = etree.HTMLParser()
broken_html = open('links.txt','r')
tree   = etree.parse(broken_html, parser)

raiz = etree.Element(u'opml')
head = etree.SubElement(raiz, 'head')
titulo = etree.SubElement(head, 'title')
body = etree.SubElement(raiz,'body')

for e in tree.xpath('//a'):
    outline = etree.SubElement(body,'outline')
    outline.attrib['text'] = e.text
    outline.attrib['title'] = e.text
    outline.attrib['type'] = 'rss'
    outline.attrib['version'] = 'RSS'
    outline.attrib['xmlUrl'] = e.attrib['href']
    outline.attrib['htmlUrl'] = e.attrib['href']

print(etree.tostring(raiz,pretty_print=True))
 

Redirecionei a saída pra um xml, e voi-lá! Tempo médio de preparo, 10 minutos, servir quente.