为了账号安全,请及时绑定邮箱和手机立即绑定

客户端直接显示id不是一种好方案,譬如/article/2,这样的话,爬虫从1-10000就可以爬取所有文章,应该hash一下

客户端直接显示id不是一种好方案,譬如/article/2,这样的话,爬虫从1-10000就可以爬取所有文章,应该hash一下

PHP
侃侃尔雅 2019-03-14 13:32:25
一般用什么hash方案呢?md5嘛
查看完整描述

14 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

只要公开的都有办法爬,包括含登陆验证的

查看完整回答
反对 回复 2019-03-18
?
侃侃无极

TA贡献2051条经验 获得超10个赞

建表的时候处理下

id,hash(随机字符串就好,6-8位)

id只给内部用,不要返回给前台,前台使用hash读取文章

查看完整回答
反对 回复 2019-03-18
?
慕森卡

TA贡献1806条经验 获得超8个赞

基本想要爬你的话,你怎么hash都没用。

查看完整回答
反对 回复 2019-03-18
?
开心每一天1111

TA贡献1836条经验 获得超13个赞

hash ,你哪里看的文章乱写的啊 -_-

hash 之后,你自己都无法知道原来的 id 是什么啦。

如果要非可预测性的主键,成熟方案是使用 uuid

当然,你不怕麻烦,专门拿一列存一个 showId ,它是“非可预测值”(这个值可以是 id 的 hash ,加 salt)。

查看完整回答
反对 回复 2019-03-18
?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

设置不规则ID,只能增加爬虫难度,没办法杜绝。
爬虫会从上级列表页面获取文章连接。所以说这个问题基本杜绝不了

查看完整回答
反对 回复 2019-03-18
?
慕尼黑5688855

TA贡献1848条经验 获得超2个赞

你经过一番折腾后找到了方案,比如hash了下,那么用户从列表页点进来是hash过的链接,难道爬虫就不能从列表页进来?

查看完整回答
反对 回复 2019-03-18
?
烙印99

TA贡献1829条经验 获得超13个赞

不需要的,你能想到的,爬虫都想到了。你想不到的,可能爬虫也想到了。。。

查看完整回答
反对 回复 2019-03-18
?
慕工程0101907

TA贡献1887条经验 获得超5个赞

如果ID是连续的,恶意用户的扒取工作就非常容易做了,直接按照顺序下载指定URL即可;如果是订单号就更危险了,竞对可以直接知道我们一天的单量。所以在一些应用场景下,会需要ID无规则、不规则。

查看完整回答
反对 回复 2019-03-18
?
慕姐4208626

TA贡献1852条经验 获得超7个赞

没什么用的,你在id上做手脚就像是你在队伍中不断的换个帽子,别人还是能从队伍找到你,一般都是在页面上做功夫,比如简单的有源码混淆,前台用户看不出来,但是采集用的有头无头浏览器都是得到的源码,这样就提升了难度.只有难度大于收益,才能让爬虫放手.谁也不喜欢得不偿失.

查看完整回答
反对 回复 2019-03-18
?
慕的地8271018

TA贡献1796条经验 获得超4个赞

把请求区分开来,也就是将请求分为有效请求和无效请求

查看完整回答
反对 回复 2019-03-18
  • 14 回答
  • 0 关注
  • 476 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信