Code Monkey home page Code Monkey logo

data's Introduction

中文语料库-每日自动更新版

创作初衷

网上有一些中文语料库,但是居然都不是自动更新的。

是可忍,孰不可忍。我想自动挖掘研究市场热点炒股票,没有新数据搞毛线。

于是,有了这个项目 : 《中文语料库-每日自动更新版》 。

核心**,通过RSS订阅,存档内容。

然后通过GitHub Actions来实现每日运行,这样就实现了一个无服务器的自动更新语料库。

Github仓库有1GB容量的限制,但热度高的项目能申请更多存储空间。

为了避免空间不足导致语料库无法更新,请大家给语料仓库多多加星。

为了节约空间,历史语料被打包发布到了 github release ,克隆语料仓库后,首先运行 ./init.sh 导入历史语料。

已收录网站

含历史数据(为这些网站定制了爬虫,抓取了全部的文章)

  1. 奇客资讯 solidot.org 👉 语料库

不含历史数据(只订阅了RSS,没写历史数据爬虫,仅含订阅日之后的文章)

媒体

  1. 知乎每日精选 👉 语料库
  2. 知乎日报 👉 语料库
  3. 游研社 👉 语料库
  4. 虎嗅 👉 语料库
  5. 好奇心日报 👉 语料库
  6. 少数派 👉 语料库
  7. 小众软件 👉 语料库
  8. 超能网 👉 语料库
  9. 爱范儿 👉 语料库
  10. 极客公园 👉 语料库
  11. 理想生活实验室 👉 语料库
  12. 科学松鼠会 👉 语料库
  13. PanSci 泛科学 👉 语料库
  14. 人人都是产品经理 👉 语料库
  15. 优设网 – UISDC 👉 语料库

个人博客

  1. 阮一峰的网络日志 ruanyifeng.com 👉 语料库
  2. 月光博客 👉 语料库
  3. 若望的翻译车间 👉 语料库

添加新源

欢迎大家共享有价值的RSS源。如何添加新的RSS内容源呢?流程如下:

  1. 找到高质量全文输出的RSS
  2. 参考 rss/zhihu-daily.coffeerss/williamlong.info.coffeerss/solidot.org.coffee 创建一个文件
  3. 修改 dump/README.md,在上面添加新源的介绍。
  4. 提交代码合并请求

暂不收录

以下RSS有问题,暂不收录

  1. 36氪 会随机把少数字符替换为乱码

目录结构

data/ruanyifeng.com 为例

  • rss.ymlrss的元信息
  • 以数字为名称的文件,这里是内容存档,文件名含义是 int(时间戳/86400)

格式说明

  • 第一行 : ➜标题
  • 第二行 : 链接链接 时间(中间的分隔符是TAB)
  • 之后的行 : 正文的HMTL (直到出现下一个➜)

示例如下 :

➜标题
链接   时间
正文

演示文档

标题、内容中的 都被替换为了 (这两个箭头不是同一个字符),TAB都被替换为了空格,所以解析的时候直接split即可。

文件名为日期 : 日期 = 取整(时间戳/86400)

文档中时间为 : 时间戳秒数减去当日零点的秒数

实际时间戳 = 文件名*86400 + 文档中第二行的时间

文本解析的代码可以参考这里

抽取纯文本

上面存档的正文是HTML,但往往搞挖掘需要的是纯文本。

语料仓库自带了纯文本抽取工具。

data/extract.py

进入data 目录,首先用python3pip运行(有些系统是pip3

pip install -r requirements.txt

然后运行 ./extract.py 输出路径

运行后输出一堆类似 知乎日报.zd 的文件。

.zd文件是Zstandard压缩后的纯文本文件 ( 参见 Zstandard - Real-time data compression algorithm )

使用 zdcat 命令可以查看, 比如:

zdcat /share/txt/data/ifanr.com.zd

运行后可以看到正文,文档格式和上文一致(时间戳被还原为绝对时间)。

在程序中读取zd文件,可用如下方法。

import zd

with zd.open(
  "/share/wiki/zhwiki-20200701-pages-articles.txt.zd"
) as f:
  for i in f:
    print(i)

zd的python依赖可以单独安装,如:pip install zdzdcat会随着zd附带安装。

zd项目的源码见gitee.com/znlp/zd

ubuntu 用户也可以安装 zstd软件包,然后用 zstdcatunzstd 等命令。

我的其他项目友情推荐

2. 谷歌浏览器实用插件:六度空间 · 短链接

可以生成短链接(短网址)、二维码,一键复制标题和链接。

现有的chrome插件,没有一个能自动复制并带上标题的,所以自己写了一个,很实用,欢迎试用。

安装地址:Chrome 网上应用店

如果没法访问Chrome网上应用店,可以按照以下步骤安装。

点击这里下载源码 ,并解压

在Chrome浏览器中输入 chrome://extensions ,并开启开发者模式(点击右上角)

点击「加载已解压的扩展程序」选择刚刚解压的目录。

这是开源项目,欢迎参与改进。

关于作者

张沈鹏,欢迎扫码关注我的微信公众号。

data's People

Contributors

zsp042 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.