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

由一次修改自动签到,反省到的问题

  •  
  •   jianghu52 · 2015-04-27 13:54:35 +08:00 · 3527 次点击
    这是一个创建于 3530 天前的主题,其中的信息可能已经有所发展或是发生改变。
    前两天smzdm的自动签到脚本不好用了。发了帖子询问
    原帖: https://www.v2ex.com/t/185429#reply8
    事情已经解决了。问题就在于要在cookie中设置 __jsl_clearance 字段的值。
    我现在的问题是,通过什么方法,能发现smzdm校验的是 __jsl_clearance 这个字段。如果遇到类似的防爬虫的手段,应该用什么方式来判别。这是我现在迷茫的地方。
    8 条回复    2015-04-27 17:16:56 +08:00
    hiddenman
        1
    hiddenman  
       2015-04-27 15:17:13 +08:00
    如何设置cookie的值?
    binux
        2
    binux  
       2015-04-27 15:32:16 +08:00
    command+option+i > network > preserve log
    jianghu52
        3
    jianghu52  
    OP
       2015-04-27 16:10:39 +08:00
    @binux 我知道 preserve log 怎么开。但是具体要看什么呢?cookie整整4大行。为什么到就知道要check这个__jsl_clearance 参数呢。
    binux
        4
    binux  
       2015-04-27 16:11:32 +08:00
    @jianghu52 先清除 cookie 再请求啊
    jianghu52
        5
    jianghu52  
    OP
       2015-04-27 16:15:40 +08:00
    @hiddenman [session.cookies['__jsl_clearance'] = c] 这一句就是set cookie的值。
    在sesion.get的时候,他可以加cookies的参数。
    jianghu52
        6
    jianghu52  
    OP
       2015-04-27 16:30:29 +08:00
    @binux 我不是不知道怎么取__jsl_clearance这个参数。我想知道的是,怎么知道,smzdm 需要的这个__jsl_clearance参数,才能判定这个python脚本不是机器人。换句话说,smzdm修改了规则,需要判断cookie的__jsl_clearance参数,那么作为用户,怎么知道这个规则的。
    binux
        7
    binux  
       2015-04-27 16:34:29 +08:00   ❤️ 1
    @jianghu52 先清空 cookie,来一遍登录流程。
    先带最小负荷(默认 header,无 cookie),请求一遍,无效。
    逐个添加 header。
    看那个 header 哪来的。
    over
    jianghu52
        8
    jianghu52  
    OP
       2015-04-27 17:16:56 +08:00
    @binux 谢谢。这个方法好。我去试验下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5289 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 08:14 · PVG 16:14 · LAX 00:14 · JFK 03:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.