简介
这个脚本在greasyfork的各种评论、留言相关页面显示发言者的注册时间。如果你是开发者,可以帮你分辨恶意评论的小号;如果你不是开发者,也可以帮你辨认发言者是老用户还是新用户。
技术实现
查看一批老用户的最近活动时间,推测其注册时间,形成一个数据库db,写在脚本中。另外每隔一段时间查看一次新注册用户列表,记下其ID和注册时间,形成一个补充数据库db2,以greasyfork库的形式发布,定时更新并在本地缓存24小时,缓存过期后脚本重新获取db2数据。db + db2 就成为一个伪随机取样后形成的uid <-> register timestamp 的数据库。获取页面上每一个用户的uid,查询数据库,即可根据相邻uid的注册时间推测这个用户的注册时间,误差根据相邻uid的密集度,可能从几小时到三两天不等。
更新
v1.0.8
- 适配新的relative-time标签
v1.0.7
- 优化了时间计算,页面有gf-relative标签时,优先使用最大的datetime值作为注册时间的上限,而非使用当前时间戳
- 私信页面支持显示
- “注”字title处显示uid
v1.0.6
- 最近的变更忘记支持sleazyfork,做了个小修复
v1.0.5
- 在用户主页的用户名旁、评论列表的"Deleted user \d+"旁边也显示注册时间
v1.0.4
支持自动翻页
优化了一下时间计算
v1.0.3
db2不再通过eval执行,而是从greasyfork引入库文件后match到数组内容,再用json.parse获取,参见 https://greasyfork.org/zh-CN/scripts/450603/discussions/147050
为防止浏览器缓存db2.js导致更新失效,url中加入了v参数,值为时间戳,version参数会导致404,所以用了v,参见 https://greasyfork.org/zh-CN/scripts/450603/discussions/147092
修复了一个时间计算错误,判断更准确了
关联的库文件实现了自动更新,并修复了数组成员错误顺序的问题
v1.0.2
根据https://greasyfork.org/zh-CN/scripts/450603/discussions/147015建议加入对sleasyfork的支持,已确认两站用户是相通的
脚本因引入github gist上的js被举报下架,根据https://greasyfork.org/zh-CN/scripts/450603/discussions/147050的建议和管理员的修订意见,新建了一个库,替换了gist上的数据源
v1.0.1
- 支持dd.script-list-author > span > a选择器
脚本的由来
大约两个月前,我发布了一个脚本 百度网盘路径助手(收藏夹:收藏、直达文件夹 | 读秀书库直达:输入SS号定位相应图书)。发布后第二天,只有几个安装时收到了一条差评,说我骗钱、跑路云云,让我气愤又莫名其妙。
留言者niaide597当时写道:
哈哈,之前骗钱跑路的删掉代码,又卷土重来了。
冲了会员就消失,不服务
现在开始卖号了?大家擦亮眼睛注意识别哦
因为这个脚本提供了在百度网盘中索引读秀PDF图书的功能,开始我想他是付费买某人的读秀相关服务被骗,又把我误作了某人吧,于是回复质问他为什么污蔑人。过了不久我恍然大悟,这是恶意差评吧。我没有任何理由让他怀疑啊,首先是我没做过读秀相关的生意,关键是他没理由怀疑我是某某人啊,这又不是社交平台,怎么会凭一个账号、一个新开发的脚本判断一个人是谁、做过什么。然后我看到了他的ID很新,基本确认这是一个用读秀脚本做生意的某人注册的小号,果断举报了这个评论,没多久管理员就将这条评论删除了。
这个脚本开发完后,再去看这位niaide597的评论记录,发现脚本推测他的注册时间是2022/7/5,而他当时的留言时间是2022/7/4晚11点多。还有,他目前仅有的两条都是跟读秀脚本有关的,一条好评,另一条404了,估计不是好评。总之,niaide597是刷评论专用小号的可能性很大。
大约一周前,8月23日晚11点多,提醒邮件告知,脚本收到一条中评。asebessia777预先判断我是卖号的,怀疑我可能不更新导致“弄”的号失效或找不到了,便基于“中立”给了我中评,尽管评论时的选项很清楚,中评是“一般 - 脚本能用,但还有一些问题”。他没说关于脚本功能的任何问题,而是因为怀疑未来可能怎样,做出了评价。我甚至不确定他说的卖号是什么意思,卖百度网盘账号还是卖读秀群组权限,还是卖机器人服务(后两者我都买过)。现在这个脚本显示asebessia777是评论当天注册的,看来他是为了发评论专门注册了这个账号。虽然他的发言没道理,但还有底线,没上来就给人差评。
greasyfork上线于2014年2月中下旬,其近年的新注册用户至少有一半来自中国。关注新用户列表几天后,我做了这个粗略的判断。有这么几个理由:
- 查看greasyfork不限语言的总安装量排行榜,前面的基本全是面向中文用户的脚本。
- 观察greasyfork的用户注册,目前(2022年9月)每天新用户大约350-400,从注册时间峰谷可推测时区是东八区左右的居多。
- 新用户的用户名包含中文的就大于20%,中文用户注册而不使用中文用户名的只多不少。
总之,我的两次遭遇和最近的观察,让我很怀疑greasyfork上有一些人会专门注册新号给人恶意评论。开发脚本并不容易,没人高兴收到中差评,如果这中差评毫无道理,开发者置之不理就有些对不住自己了。为了方便各位开发者辨别恶意差评,我开发了这个脚本。虽然无法确证某人是恶意评论,但如果是没道理给中差评的新注册用户,你可以果断举报,不能纵容恶意差评的不正之风。
脚本作用截图
匹配评论列表页面:https://greasyfork.org/zh-CN/scripts/\d+/feedback
匹配评论页面:https://greasyfork.org/zh-CN/scripts/\d+/discussions/\d+
匹配用户讨论页面:https://greasyfork.org/zh-CN/discussions?user=\d+
匹配讨论列表页:https://greasyfork.org/zh-CN/discussions
匹配各类页面上的脚本作者链接
匹配用户列表页 https://greasyfork.org/zh-CN/users