🗳V2ex 现在可以支持投票了。

2020-05-20 11:47:43 +08:00
 imdong

昨天看到的是哪个帖子,说要投票功能的来着?

今天正好我就搞了一下这个,功能很简单,就是抓取回复的内容,然后统计一下存到 Redis 缓存起来。

投票的源数据依然在 V2EX 站内,我这边不做长期保存,但我尽量保证这个接口的可用性(如果没有被恶意 or 攻击的话)。

然后看了下 V2EX 的 API 接口,似乎没有可以获取帖子信息的接口?

目前是爬的页面,然后用正则表达式匹配内容,为了减轻压力,统计数据只在帖子被访问时被动更新,最多一分钟爬取一次,整体数据缓存 24 小时,24 小时内被访问,则只重新爬取最新回复(适用回复分页的情况)。

暂时只支持单选,一个人只能投票一次(第一次有效回复为准),统计只与所在帖子和标题关联,同一个帖子可以多个投票,只要标题不同即可。

同一个图片地址在不同的帖子,算不同的投票,数据是分开的。

然后使用方法就是直接获取一个投票的图片地址,然后插入到主题即可,参与投票则回复 #选项标题#。

V2ex 投票生成器 代码已开源: GitHub

PS: 不知道爬虫行为是否被允许,如果违规请 @Livid 说一下,或者给一个允许的频率。

另:由于代码是盲写,可能还有些问题,后续如果出现频率问题,我会限制抓取为 1 秒钟请求一次(全局)。

20341 次点击
所在节点    分享创造
288 条回复
imdong
2020-05-21 18:49:50 +08:00
@marcong95 思路可以的,可以给图片加上链接。

做法就和现在不太一样了,改天有时间重新起个项目搞这个还是可以的。
ifwangs
2020-05-21 22:05:58 +08:00
#有意义#
tanranran
2020-05-21 22:50:28 +08:00
#有意义#
shawndev
2020-05-22 10:01:24 +08:00
#需要更好的#
18800210448
2020-05-22 13:36:01 +08:00
#有意义#
CodeCore
2020-05-22 20:00:11 +08:00
#有意义#
jksjsjjkz
2020-05-23 08:38:30 +08:00
#有意义#
aiden9527
2020-05-26 11:03:51 +08:00
#有意义#

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

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

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

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

© 2021 V2EX