Использую модули urllib и xml.dom.minidom для парсинга рсс.
Делаю вот так:
from xml.dom.minidom import *
import urllib
...
freelance_site = FreelanceSite.objects.get(id=1)
fh = urllib.urlopen(freelance_site.rss_feed)
fh = fh.read()
site_dom = parseString(str(fh))
site_title = getText(site_dom.getElementsByTagName("title")[0].childNodes)
site_list = site_dom.getElementsByTagName("item")
projects = []
for site in site_list:
title = getText(site.getElementsByTagName("title")[0].childNodes)
link = getText(site.getElementsByTagName("link")[0].childNodes)
description = getText(site.getElementsByTagName("description")[0].childNodes)
category = getText(site.getElementsByTagName("category")[0].childNodes)
pub_date = getText(site.getElementsByTagName("pubDate")[0].childNodes)
projects.append({'title': title, 'link': link, 'description': description, 'category':category, 'pub_date': pub_date})
site_dom.unlink()
Но возникает проблема. Некоторые теги выглядят так:
<title><![CDATA[Копирайтер сайта Free-lance.ru]]></title>
<description><![CDATA[Приглашаем на постоянную удаленную работу копирайтера – 4 часа в день/5 дней в неделю.]]></description>
Как нужно поступать в таких случаях?