我正在尝试使用XmlPullParser解析rss提要,查找<title>
标记,如果找到了标记,则提取内部文本。
对于简单的rss文件,一切都很有用,但如果rss feed包含这样的内容:<media:title type="html">
,那么该行也会被处理。
然而,这不是预期的结果,我只关注<title>
和<media:title type="html">
。
我的问题是如何修改我的代码来实现这一点,或者我在这里缺少什么?
try {
URL url = new URL("http://androidresearch.wordpress.com/feed/");
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(true);
XmlPullParser xpp = factory.newPullParser();
xpp.setInput(getInputStream(url), "UTF_8");
int eventType = xpp.getEventType();
while (eventType != XmlPullParser.END_DOCUMENT) {
if (eventType == XmlPullParser.START_TAG) {
if (xpp.getName().equalsIgnoreCase("title")) {
items.add(xpp.nextText());
} else if (xpp.getName().equalsIgnoreCase("link")) {
// Log.d("GREC", xpp.nextText());
links.add(xpp.nextText());
}
}
eventType = xpp.next();
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (XmlPullParserException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}