feedparser模块,
feedparser 号称是一个 universal feed parser,使用它我们可轻松地实现从任何 RSS 或 Atom 订阅源得到标题、链接和文章的条目了,这个号称并不是说的话,是因为这个模块真的很强大,解压打开后可以直接使用:
python setup.py install
安装使用,也可以使用:pip install feedparser来安装模块
关于RSS是什么,这个其实我也不清楚,查了资料以后才明白,RSS是RDF Site Summary 的缩写(RDF是Resource Description Framework的缩写 ),是指将网站摘要用xml语言描述。
如果跟一样都不懂RSS是什么的同学可以读一下这里,个人感觉总结的还是很详细的。
好了,不闲聊这些了,因为想知道是什么的话网上输入关键词,一查一大堆的资料就来了,下面看一下我的实践,使用feedparser模块来进行解析过滤页面,返回需要的信息:
下面是具体的实现:
#!usr/bin/env python
#encoding:utf-8
import feedparser
def test(url='http://blog.csdn.net/together_cz/article'):
'''''
学习使用feedparser
输入:url
输出:页面信息
'''
one_page_dict = feedparser.parse(url)
'''''
解析得到的是一个字典
'''
print one_page_dict
'''''
输出字典中的键值有哪些,一共有10中如下:
['feed', 'status', 'version', 'encoding', 'bozo', 'headers', 'href', 'namespaces', 'entries', 'bozo_exception']
'''
print one_page_dict.keys()
print '----------------------------------------------------------'
print '访问页面链接href为:'
print one_page_dict['href']
print '页面返回headers信息为:'
print one_page_dict['headers']
print '页面version信息为:'
print one_page_dict['version']
print '页面状态码为:'
print one_page_dict['status']
print '页面语言类型为:'
print one_page_dict['feed']['html']['lang']
print '页面meta信息为:'
print one_page_dict['feed']['meta']['content']
print one_page_dict['feed']['meta']['name']
if __name__ == '__main__':
url_list=['http://www.baidu.com','http://www.vmall.com','http://www.taobao.com']
for one_url in url_list:
print '当前url为--->', one_url
try:
test(one_url)
except:
print '***************************************************************'
print '----------------------------------------------------------'