最近的一个兴趣项目——Blogbar:聚合个人博客( Alpla 版)

2014-12-16 10:25:05 +08:00
 hustlzp

http://www.blogbar.cc

平常挺喜欢写博客,所以这一个多月抽时间做了个博客相关的兴趣项目 Blogbar,用一句话介绍这个产品就是:聚合个人博客

之前已经在一个帖子中发布了( http://www.v2ex.com/t/147969 ),不过那个时候还是刚刚 Alpha 初期。最近把界面简单地整了一下,修复了一些bug,现在这个版本算是 Alpha 正式版了,基本可用。

使用简介

如果有一篇个人博客挺有价值的,但是并不提供 RSS/Atom 订阅,可以写一个 Spider 放到 https://github.com/blogbar/blogbar/tree/master/spiders 下面,在 Spider 中继承 BaseSpider,重写一些属性 & 方法就 OK。比如我想爬王垠的博客(http://www.yinwang.org, 目前已 offline…):

# coding: utf-8
import datetime
from .base import BaseSpider, get_inner_html, remove_element


class WangYinSpider(BaseSpider):
    url = 'http://www.yinwang.org'
    title = '当然我在扯淡'
    author = '王垠'

    @staticmethod
    def get_posts(tree):
        posts = []
        for item in tree.cssselect('.list-group-item a'):
            title = item.text_content()
            url = item.get('href')
            # 获取日期
            date_list = filter(None, url.split('/'))
            day = int(date_list[-2])
            month = int(date_list[-3])
            year = int(date_list[-4])
            published_at = datetime.datetime(year=year, month=month, day=day)
            posts.append({
                'title': title,
                'url': url,
                'published_at': published_at
            })
        return posts

    @staticmethod
    def get_post(tree):
        content_element = tree.cssselect('body')[0]
        remove_element(content_element.cssselect('h2')[0])  # 去除h2标题
        remove_element(content_element.cssselect('p')[0])  # 去除第一个段落
        return get_inner_html(content_element)

使用 lxml 解析 HTML,文档参考: http://lxml.de

提建议

欢迎大家提建议!

可以直接回帖,或者在 http://www.blogbar.cc/suggest 留言,或者在 https://github.com/blogbar/blogbar 上 Pull Request、开 issue,都欢迎。

Beta 版计划

不过最近LZ会有好长一段时间不会开发 Blogbar 了,公司的远程实习开始了,也还有另外一个坑打算和小伙伴一起挖,所以 Blogbar 这边暂停下…

之前弃了好多坑,但 Blogbar 这个坑就我感觉是可以持续挖下去的。

BTW,有豆瓣的童鞋在吗?之前我一直在豆瓣九点( http://9.douban.com )找好博客,不过最近挂了好久,没人管了么…

3119 次点击
所在节点    分享创造
4 条回复
lagramoon
2014-12-16 11:04:15 +08:00
9点好像已沉,修炼?
hustlzp
2014-12-16 11:40:01 +08:00
@lagramoon 挂了接近一周...

之前豆瓣收购抓虾,估计抓虾的系统都移到9点上面来了。

9点虽然有很多槽点,不过还是不错的产品。
invite
2014-12-16 13:38:58 +08:00
不错的,N久之前搞过类似的东东,后来就不更新了。
Doubear
2014-12-16 13:40:59 +08:00
当然我在扯淡 -> false
当我在扯淡 -> true

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/154254

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX