被爬虫爬了,大家反爬一般有什么好的手段措施 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
bigbigeggs
8.67D
V2EX    问与答

被爬虫爬了,大家反爬一般有什么好的手段措施

  •  
  •   bigbigeggs 2024 年 9 月 12 日 1790 次点击
    这是一个创建于 501 天前的主题,其中的信息可能已经有所发展或是发生改变。

    之前写了一个小玩具,放到了公网上面,平时几乎没什么人访问,最近流量突增,并且 来来回回就是那几个 ip 。

    而且这几个 ip 直接访问的是接口,没有通过页面访问,大概是 50-60 个不同的 ip ,然后间隔一段时间访问(不是短时间内 猛刷接口),把 50-60ip 封了,又换了另外一批

    而且间隔几分钟,突然请求一波,间隔几分钟,突然请求一波。看起来像是肉鸡 ip ,大家对于这种爬虫,有没有什么好的手段可以防止的?

    我的初步想法是,每个 ip 一天之内访问 xx 此,用一个 map 或者 redis 记录一下,超过多少次就封禁,但怕容易封错,咨询一下大家的意见

    1: ip: 16.163.109.41 2: ip: 18.162.143.19 3: ip: 16.162.55.213 4: ip: 18.166.70.237 5: ip: 43.198.17.104 6: ip: 18.166.67.209 7: ip: 18.162.191.172 8: ip: 18.162.133.58 9: ip: 16.162.255.138 10: ip: 16.162.160.93 
    11 条回复    2024-09-13 16:59:08 +08:00
    summerwar
        1
    summerwar  
       2024 年 9 月 12 日
    直接访问接口,没有通过页面的,直接查 referer ,如果为空,则直接返回随机假数据
    bigbigeggs
        2
    bigbigeggs  
    OP
       2024 年 9 月 12 日
    @summerwar 看了下请求头,什么都有。UA referer 这些全构造了,像一个真人一样,头大
    summerwar
        3
    summerwar  
       2024 年 9 月 12 日
    @bigbigeggs redis 记录下,超过 20 次或者多少次,随机返回 N 次随机数据,要半假那种

    感觉反爬想简单就弄点假数据塞进去,让他怀疑没法知道数据真假,导致放弃
    dilu
        4
    dilu  
       2024 年 9 月 12 日
    最好的办法就是#3 说的 随机塞一些假数据进去,其他的所有封禁手段只是不断的提高爬虫门槛,反而让对方伪装的更无懈可击

    还有一种方法就是如果你不在意你的数据,直接把数据打包提供一个下载链接 对方就不爬了
    AliCN
        5
    AliCN  
       2024 年 9 月 12 日
    1.停接口。
    2.接口加认证。
    bigbigeggs
        6
    bigbigeggs  
    OP
       2024 年 9 月 12 日
    @AliCN 接口不太可能停,认证指的是登录这种?
    bigbigeggs
        7
    bigbigeggs  
    OP
       2024 年 9 月 12 日
    @dilu 感谢,的确给些假数据,对方就比较迷惑了。的确可以试试这种方法,感觉可以作为迫不得已的一种屈服
    GG668v26Fd55CP5W
        8
    GG668v26Fd55CP5W  
       2024 年 9 月 12 日 via iPhone
    加一层 cloudflare CDN ,请求头有个机器人评分,直接拒绝掉分数低的请求,还不行就启动 cloudflare 盾。
    Rocketer
        9
    Rocketer  
       2024 年 9 月 12 日 via iPhone
    蜜罐比封禁好使,可疑请求就给他假数据,无规律的那种。这有两个好处

    对误伤的真人来说,内容还是有的,只是看着很奇怪,他会换一个继续看。

    对真的爬虫来说,这就是汤里的老鼠屎,他除非上真人逐条看,否则识别不出哪些是假数据,导致整个采集结果不敢用。
    bqzzd
        10
    bqzzd  
       2024 年 9 月 13 日
    @bigbigeggs #7 封 IP 是很容易误伤的,反爬也只是增加爬虫的成本,换句话说,人家想搞到你数据,只要你开放怎么都能搞到,所以建议 OP 放宽心,用些成熟的比如 cloudflare 网站护盾、或者一些验证码之类的比较省心,剩下的爬虫只要不影响网站运营就行。另外一些常见的防护:
    1.网站不展示全部数据
    2.签名验证
    3.网站 js 混淆,接口、数据加密
    4.验证码、第三方防护
    等等
    haoyunyinglai
        11
    haoyunyinglai  
       2024 年 9 月 13 日
    找个开源 waf 套上
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4992 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 03:54 PVG 11:54 LAX 19:54 JFK 22:54
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86