V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
v7788120
V2EX  ›  问与答

如果破解分页随机插值反爬手段

  •  
  •   v7788120 · 2022-10-24 09:10:36 +08:00 · 2712 次点击
    这是一个创建于 768 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近在爬一个网站,爬取的列表页面,老是有重复值出现,后来仔细研究,对方网站应该是做了反爬设置。

    例如列表一共有 100 条数据,A 数据原本出现在第 1 页的,爬完发现 A 数据又在第 2 页随机出现过,导致最后爬取总数据量只有 98 条,存在数据缺失漏爬。

    这种情况不仅仅是 A 数据,有可能是 B 数据、C 数据出现这种问题,我感觉应该是对方网站反爬,会随机抽取上一页的某条数据,替换到当前页里面,这样的话是总是缺少数据,导致数据不全。

    有大佬遇到过这个问题吗?大家一起交流交流

    24 条回复    2022-10-25 00:39:07 +08:00
    A555
        1
    A555  
       2022-10-24 09:15:13 +08:00   ❤️ 3
    有没有可能是对方网站 sql 写的有问题呢
    这种反爬逻辑有什么意义
    dycc2010
        2
    dycc2010  
       2022-10-24 09:20:21 +08:00
    有没有可能是对方网站 sql 写的有问题呢
    InDom
        3
    InDom  
       2022-10-24 09:22:27 +08:00
    如果正常浏览和爬虫的数据不一致,那就是你模拟的不够真实。

    否则,给对方提 bug 。🐶
    kiolygenius
        4
    kiolygenius  
       2022-10-24 09:22:53 +08:00
    为什么老是见到把“如何”达成“如果”的错别字,用的不是拼音输入法?
    v7788120
        5
    v7788120  
    OP
       2022-10-24 09:26:22 +08:00
    @A555
    @dycc2010 怀疑过是不是对方 SQL 写的有问题
    v7788120
        6
    v7788120  
    OP
       2022-10-24 09:26:38 +08:00
    @InDom 不好提呀,提了不就暴露了。
    v7788120
        7
    v7788120  
    OP
       2022-10-24 09:26:59 +08:00
    @kiolygenius 错别字了😅
    InDom
        8
    InDom  
       2022-10-24 09:30:51 +08:00
    @kiolygenius 如果是手机,九宫格输入法。

    gh 都在 4 键上,rg rh 都是 74 ,而且都是高频词,还是句子的开头,联想功能也没用。

    至于全键盘或者实体键盘,两个键挨的也确实挺近的。

    反正我是经常按错。
    biubiuF
        9
    biubiuF  
       2022-10-24 09:45:49 +08:00
    这是多维度动态排序
    v7788120
        10
    v7788120  
    OP
       2022-10-24 10:00:15 +08:00
    @biubiuF 这种情况基本上是不可破了吧?
    676529483
        11
    676529483  
       2022-10-24 10:06:47 +08:00
    不像是喂毒,有可能他数据每次调接口值就变了,数据变动的快?
    watzds
        12
    watzds  
       2022-10-24 10:29:31 +08:00
    常见 sql bug ,排序不稳定

    或者数据变化了
    biubiuF
        13
    biubiuF  
       2022-10-24 10:43:41 +08:00
    @v7788120 #10 选用户少的时候爬
    kiolygenius
        14
    kiolygenius  
       2022-10-24 11:44:00 +08:00
    @InDom 你们拼音输入法都是用声母缩写啊?嫌全拼重码还不够多吗😅
    laoyur
        15
    laoyur  
       2022-10-24 12:34:53 +08:00
    v 站至少看过几十个『如果』『如何』用错的案例了
    已经见怪不怪 😂
    jifengg
        16
    jifengg  
       2022-10-24 12:35:33 +08:00
    @kiolygenius +1 ,有时候看类似标题实在是费解,你以为他要提出一个假设,然后干什么,结果他是问怎么做,没下文了,看着真难受。比同音字的错别字还难受。
    Jooooooooo
        17
    Jooooooooo  
       2022-10-24 12:45:46 +08:00
    能让你爬出 98 条数据说明对方根本没有反爬的措施.
    ZhenShaw
        18
    ZhenShaw  
       2022-10-24 12:56:33 +08:00 via Android
    @kiolygenius 类似你的“打成”和“达成”
    Blanke
        19
    Blanke  
       2022-10-24 13:22:09 +08:00
    你用正常用户正常环境去访问,看是否有重复情况
    yufeng0681
        20
    yufeng0681  
       2022-10-24 14:33:56 +08:00
    网站不拿出来,让大家看看实际情况?
    这种反爬,应该是人家设计好的, 谁没事会看下一页的数据呢?有用的数据在第一页没有,那第二页更加不可能有;

    你人手动浏览时,都没法看到第二页有效数据; 爬虫怎么可能超越你的智慧?

    有个解决方案是细分再细分检索。把网站有的所有检索条件,充分利用,尽量让检索出来的数据落在 100 以内,多看到一些真实数据(还是不全)
    wbrobot
        21
    wbrobot  
       2022-10-24 15:06:41 +08:00
    @A555 不是 sql 的问题,他这个描述一看就是人家把列表页生成静态, 更新不及时
    kiolygenius
        22
    kiolygenius  
       2022-10-24 15:50:36 +08:00
    @ZhenShaw 连全拼都有同音词汇重码,我就不理解用声母缩写打字到底能快多少。
    neptuno
        23
    neptuno  
       2022-10-24 18:46:21 +08:00 via iPhone
    100 条都让你爬了 98 条,这哪叫反爬呀。应该就是 bug 了
    mikewang
        24
    mikewang  
       2022-10-25 00:39:07 +08:00
    有没有一种可能,这个列表一直在更新呢
    第一页新增了值,后面自然会推后
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1520 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 17:09 · PVG 01:09 · LAX 09:09 · JFK 12:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.