🛬前言

今天带大家了解一种暴力解析Rss种子的方式feedparser,连爬取带解析,对于blog,新闻带RSS功能的是既方便又简单。

了解

RSS: RSS订阅能更快地获取信息,网站提供RSS输出,有利于让用户获取网站内容的最新更新。

feedparser: 可以轻松从任何 RSS 或 Atom 订阅源抓取标题、链接和文章的条目。

pprint: 格式化美观输出内容

安装feedparser模块

pip install feedparser

安装pprint模块

pip install pprint

🛵使用方法

首先导入feedparser和pprint库

import feedparser
import pprint

暴力解析RSS资源 这里用的是开源中国的RSS订阅源

# 网站种子解析
rss_oschina = feedparser.parse('https://www.oschina.net/news/rss')
# 抓取内容 , depth 抓取深度
pprint.pprint(rss_oschina,depth=1)

其中depth 可以根据订阅源数据深度设置 ,这里可用1 - 5测试

打印编码

print(rss_oschina['encoding'])

for 循环取出需要的数据 这一步演示传统取值方法

 for entry in rss_oschina['entries']:
     print(entry['title'])
     print(entry['link'])
     print(entry['published'])

整理为JSON数组

 mylist = [{'title': entry['title'], 'link':entry['link']} for entry in rss_oschina['entries']]
 pprint.pprint(mylist)

🍥具体代码

这里以标题和链接抓取为例,超简单代码实现

import feedparser
import pprint
"""抓取开源中国RSS"""
# 网站种子解析
rss_oschina = feedparser.parse('https://www.oschina.net/news/rss')
# 整理为JSON数组
mylist = [{'title': entry['title'], 'link':entry['link']} for entry in rss_oschina['entries']]
pprint.pprint(mylist)

一个可爱的人