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

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

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

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

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

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

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

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

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

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

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

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

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

20341 次点击
所在节点    分享创造
288 条回复
SakuraKuma
2020-05-20 15:56:20 +08:00
#有意义#
twor2
2020-05-20 15:56:25 +08:00
#有意义#
#没意义#
#需要更好的#
xunco
2020-05-20 15:59:44 +08:00
#需要更好的#
BigYao
2020-05-20 16:00:17 +08:00
#有意义#
microka
2020-05-20 16:00:36 +08:00
#需要更好的#
只能说楼主出发点是好的,但我个人认为:一、这种投票方式对用户不友好;二、用爬页面来反馈生成投票结果的实现方式也不理想。
maplelin
2020-05-20 16:00:41 +08:00
#有意义#
#需要更好的#
zydxn
2020-05-20 16:02:28 +08:00
#需要更好的#
TonyShng
2020-05-20 16:04:06 +08:00
#有意义#
BestSera
2020-05-20 16:04:23 +08:00
#无所谓#
d1n910
2020-05-20 16:05:35 +08:00
#有意义#
#需要更好的#
jmjc
2020-05-20 16:06:04 +08:00
#无所谓#
kitebear
2020-05-20 16:19:27 +08:00
#有意义#
#需要更好的#
ACodelover
2020-05-20 16:19:58 +08:00
#有意义#
iszengmh
2020-05-20 16:25:16 +08:00
我看成股票了
ytll21
2020-05-20 16:25:47 +08:00
#需要更好的#
DoubleShut
2020-05-20 16:28:27 +08:00
#有意义#
leesinquan
2020-05-20 16:28:45 +08:00
#有意义#
Tays
2020-05-20 16:29:49 +08:00
#有意义#
quxiangxuanqxx
2020-05-20 16:30:20 +08:00
#需要更好的#
ZeroW
2020-05-20 16:31:49 +08:00
#有意义#

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

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

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

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

© 2021 V2EX