Git Product home page Git Product logo

rsshub-zhihu-helper's Introduction

RSSHub 知乎小助手

如果你希望通过 RSSHub 浏览知乎,那么这个项目或许可以帮到你。本项目假定读者有一定的编程基础,并且电脑上安装有 Python 3.6+ 的环境。

想象这样一个场景。你想通过 RSSHub 订阅很多知乎用户的动态,但是又不想一个个地复制用户的 url_token(比如 https://www.zhihu.com/people/diygod 中的 diygod)来生成 feed 并加入 RSS 阅读器。如何更方便地完成这一系列操作呢?

首先,你需要知道有一种文件格式叫做 OPML,说白了就是一堆 RSS feed 的集合。大部分 RSS 阅读器都支持通过 OPML 批量导入 feed。比如我现在使用的 Inoreader

我们的思路就是先生成包含所需知乎用户 feed 的 OPML,然后用 RSS 阅读器导入。

1. 安装依赖

git clone https://github.com/laike9m/rsshub-zhihu-helper.git
cd rsshub-zhihu-helper

# If you use Poetry
poetry install

# Otherwise
pip install -r requirements.txt

# Downloads a recent version of Chromium (~100MB)
pyppeteer-install

2. 部署 RSSHub

步骤

部署私有 RSSHub 实例,才能保证 RSS 阅读器之后能顺利抓取。参见 RSSHub 文档

Q: 演示地址可以用么?

A: 演示地址为 rsshub.app, 缓存时间 20 分钟, 可以随意使用。但如果你看到路由有 反爬严格 标记,如微博、知乎等,意味着目标网站有严重的反爬策略,demo 无法确保可用性,建议自建来提高稳定性。

这里假定你已经自行部署,且 RSSHub 服务器地址位于 my.rsshub.com

3. 使用

设置环境变量 export my_rsshub_addr="my.rsshub.com"。如果不设置,会使用演示地址 rsshub.app(不建议这么做)。

首先确保你位于 rsshub-zhihu-helper 这个目录中

# 在本地启动服务器
uvicorn main:app --reload

访问 http://127.0.0.1:8000/,看完这个 gif 你就知道怎么用了:

随后在桌面上会生成一个 zhihu_feeds.xml 文件,内容如下:

<opml version="2.0">
    <body>
        <outline text="Subscriptions" title="Subscriptions">
            <outline xmlUrl='http://my.rsshub.com/zhihu/people/activities/wang-tao-tao-91-97' />
            <outline xmlUrl='http://my.rsshub.com/zhihu/people/activities/ffancage' />
        </outline>
    </body>
</opml>

之前不是选了两个用户吗?这就是包含了两个用户动态 feed 的 OPML 文件。

4. 导入 RSS 阅读器

这步取决于你用的哪个阅读器。Inoreader 是已知对 OPML 及 RSSHub feed 支持较好的阅读器。导入完成之后是这个样子。

你再也不需要依赖知乎网站或是 App 了,hoooray🎉🎉

rsshub-zhihu-helper's People

Contributors

laike9m avatar dependabot[bot] avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.