logo一言堂

吐槽俱乐部的文章数据库

吐槽俱乐部是一个可以让你对任意网页发表评论的网站。在记录你的发言同时,吐槽俱乐部也抓取了网页文字内容加以保留。那么这里一共保留了多少文章呢?现在已经接近50万。文章的来源除了用户提交之外,还有两个来源,一是各种RSS推送,目前吐槽俱乐部订阅了近万个推送。二是以上两种来源里文章中包含的超链接,我会用爬虫自动抓取。现在让我们看看这里都有什么什么吧。

网站排名

数据库里每篇文章都有一个来源,每个来源可能是一个网站,或一个网站下独立管理的目录。现在来源一共有三万个左右。根据文章数量排名,前十二位的来源是:

数据库汇总链接 来源链接 数量
Github https://github.com/ 2689
英文维基百科 https://en.wikipedia.org/ 1861
大西洋周刊 https://www.theatlantic.com/ 1604
The Register https://www.theregister.com/ 1265
纽约时报 https://www.nytimes.com/ 1001
亚马逊 https://www.amazon.com/ 646
The Guardian https://www.theguardian.com/ 571
金融时报中文版 https://ftchinese.com/ 486
politico.eu https://www.politico.eu/ 486
Bracknell News https://www.bracknellnews.co.uk/news/ 468
每日先驱报 https://www.dailyherald.com/ 455
路透社 https://www.reuters.com/ 446

文章出处第一名是Github,这可能有点出人意料。估计和我主要看科技类文章,而此类文章常常引用Github链接有关。第二名是英文维基百科,这也是非常常见的引用文献出处。第三名的大西洋周刊和第四名的The Register是我日常订阅的推送,所以收录的文章比较多。第五名的纽约时报我没有订阅,它也不提供免费RSS推送,但确实是美国第一大报,被引用的比较多。第六名的亚马逊其实内容未必是文章,但它是零售业霸主,总会有星星点点的链接进来。

前六名都有比较值得信服的原因,7到12名就有点意思了。第七名是The Guardian,有免费推送,但我从未订阅过。第八名的金融时报中文版我去年看过一段时间,现在已经很久不看了。然后的politico.eu 应该是欧洲的一份政治性英文报刊,我从未看过。Bracknell News是英国的一份地方小报。不要问我Bracknell是哪里,我也是今天才知道有这个地方。每日先驱报是芝加哥的报纸,貌似挺有名气,我从未读过。最后是路透社,应该不用介绍了。

这后面还有几万个来源。到第一千名的来源,文章收录有61篇,到第两千名,文章收录还有32篇。你读的这个网站,也就是我的个人博客,排名是883名。跟新闻网站比是远远不如,但在个人博客领域已经是中上位置了。

我每天都会抓取数千篇文章,然后还会删除数千篇文章,通过算法基本维持一个数据库慢速增长的趋势。上面的排名是怎么形成的,一部分是随机的,另一部分就是靠算法了。

我的算法

我并没有任何高深的人工智能算法,对文章本身只有字数一个数值提取供算法使用。算法的基本指导原则有三个,就是DEI:

  • 多样性(Diversity)
  • 平等性(Equity)
  • 包容性(Inclusion)

下面分别介绍。

多样性(Diversity)

人世间是一个正反馈循环,富者愈富,贫者愈贫。而网上世界就是正反馈最严重的地方。

网站和网站之间流量和内容数量的区别是相当巨大的。一个个人博客,可能一共文章只有几篇,访问量更是少的可怜。而一个新闻网站,每天出稿几十篇不算多,一年就是上万篇。文章比新闻网站更多的是各种网上论坛,水量大的地方,单独链接统计不知道会有多少。当然,最狠的还是社交媒体。在我算法不太完善的时候,有一次一个二三线社交媒体不知如何跑进我的订阅列表内,结果24小时之内我的数据库里数据量翻了一番,搞得我必须人工干预才能让世界重新清净下来。我是如何能让大网站最多也就收容几千篇,小博客也有容身之地呢?很简单:锄强扶弱。

锄强扶弱的意思是对于大流量网站,我会加快文章过期的速度,并降低数据提取的采样频率。这样子,我大大压缩了大小网站之间,数据量的动态范围。所以你在吐槽俱乐部搜索文章的时候,会碰到相当多的小众网站内容。这和谷歌百度做法完全相反。在大搜索引擎里,你基本永远找不到小网站的内容。道理很简单,他们数据库大,但不仅没有锄强扶弱,反而在锄弱扶强,流量都让狗大户瓜分了,再利益输送回搜索引擎。所以小网站永远见不到天日。

从这个意义说,吐槽俱乐部数据库的价值不在于以上榜单里,文章数量成千上百的少数新闻网站,而在于后面成千上万个老老实实自己码字的个人博客。所以我也不会把这个排名展现到吐槽俱乐部的网页上。

平等性(Equity)

锄强扶弱就是不平等的。在多样性有保证之后,我还要重归平等性。规则的目的是打压,但规则必须是平等而非歧视性的。我打压了新闻网站,但不是靠给网站贴标签,凡是新闻网站就打压,而是打压大流量网站。我更打压社交媒体网站,但我也不是歧视性地对待社交媒体,而是用一个字数相关的简单规则打压单篇文章字数少的地方:文字越少,文章过期越快。谁让社交媒体通常没什么文字呢。

平等性更体现在对用户处理方式上。用户人人平等,文章收录受用户行为影响,而目前重度用户只有我自己,所以,目前文章分布打上了我的个人印记。但我不会刻意地打压重度用户,更不会给重度用户加上一些特权。在用户行为影响这方面,我只能听之任之。

平等性最后还体现在做一些无用功上。我虽然在打压社交媒体,但社交媒体更在打压我。以推特为例,实际上我在推特上提取不到任何有用信息。但我每天还会收到几百个推特链接,每一个链接我都老老实实地去爬了,虽然什么也抓不到。规则是我制定的,所以我更要遵守。己所不欲,勿施于人。

包容性(Inclusion)

我不认为我或其他任何人掌握真理,也不认为用民主的手段可以近似真理。

不管你的三观如何,你在吐槽俱乐部里永远可以找到让你很不舒适的内容。在多样性和平等性上体现了我的算法做了什么,在包容性上体现了我的算法没有做什么。我没有做关于内容本身的任何过滤,监管,甚至网上社区常见的upvote,downvote功能都没有。

我既然没有把内容推荐到你的眼前,作为用户的你也没有权利要求我主动藏起来什么,别让小孩子们看到。不喜欢的,你永远有权利不看,但没有人能为别人做选择。你可以在有限程度上推广你欣赏的东西,例如利用Airss阅读推送,或向你的朋友分享你的公众推送,仅此而已。

结束语

吐槽俱乐部对所有人开放免费注册。注册之后才能留言,看别人的留言,或看到后台抓取的文字备份。但不注册也能读文章:搜索界面在此, 如果不知道搜索什么也可以主动刷新搜索页面,这样文章列表完全随机,我有时候无聊的时候就这么干。这样做,你看到的绝大多数都是你完全不感兴趣的东西,但偶尔,你也能捡到宝,谁知道呢?