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

机器爬行 HTML 代码,会区别实际 display: none 的元素吗?

  •  
  •   az · 2015-12-16 12:10:18 +08:00 · 2098 次点击
    这是一个创建于 3063 天前的主题,其中的信息可能已经有所发展或是发生改变。
    14 条回复    2015-12-16 18:26:17 +08:00
    DT27
        1
    DT27  
       2015-12-16 12:11:58 +08:00   ❤️ 1
    一般情况下都会设计成区别 display:none 之类的元素的。
    az
        2
    az  
    OP
       2015-12-16 12:13:38 +08:00
    @DT27 就是机器爬行的时候,也会解析 css 代码吧?
    az
        3
    az  
    OP
       2015-12-16 12:15:40 +08:00
    @DT27 比如,主 css 这样定义机器还是能识别的吧?
    .captcha-spans span:first-child {
    display: none;
    }
    DT27
        4
    DT27  
       2015-12-16 12:16:21 +08:00
    @az 你说的是什么机器?如果说百度之类的采集机器的话,不区别。如果是整站下载之类的机器,会把原样采集下来。
    如果是仅采集 HTML 页面内容,隐藏内容不会出来。
    如果是 HTML 代码,那不论隐藏不隐藏只要是 html 里的都会出来。。。
    az
        5
    az  
    OP
       2015-12-16 12:21:42 +08:00
    @DT27 就是一般破解验证码的机器。想通过在主 css 隐藏部分 span 来迷惑这类机器。
    jessynt
        6
    jessynt  
       2015-12-16 12:43:45 +08:00 via iPhone
    @az 爬虫?一般都不解析 css 啊, css 是给人类看的吧
    ChiChou
        7
    ChiChou  
       2015-12-16 12:53:54 +08:00
    爬虫不是浏览器,可以把 HTML 原封不动地抓下来,你可以自行使用 CSS Parser 处理,或者直接上 headless browser 自动渲染
    DT27
        8
    DT27  
       2015-12-16 12:57:13 +08:00   ❤️ 1
    @az 一般破验证码的都是定制化的,根据你的验证码单独定制规则。简单的隐藏迷惑是没用的。
    DT27
        9
    DT27  
       2015-12-16 12:57:48 +08:00
    @az 这就跟广告与去广告之间的关系一样。。。
    Slienc7
        10
    Slienc7  
       2015-12-16 13:01:30 +08:00   ❤️ 1
    基本不存在“一般破解验证码的机器”这类东西,大多都是手动分析 HTML ,然后针对你这个网站来写程序获取验证码,再破解的。
    CSS 隐藏这种能坑掉一些小白。
    JavaScript 动态加载验证码又能坑掉一堆小白。
    然而这些并没有卵用,稍微基础扎实一点基本都能得到你的验证码地址,然后用的你的验证码去做识别或者连接打码平台破解。

    根本的还是加强验证码强度,或者 reCaptcha 这类。
    az
        11
    az  
    OP
       2015-12-16 13:44:09 +08:00
    @xgowex reCaptcha 不考虑,人类识别会有困难
    qq286735628
        12
    qq286735628  
       2015-12-16 13:46:19 +08:00
    看你用什么爬。例如 PhantomJS 衍生出来的一系列无界面浏览器,这种爬页面,什么都能识别
    如果仅仅是最早期的爬网页文件并解析 html ,那就识别不了 CSS 和 JS 了
    DT27
        13
    DT27  
       2015-12-16 14:03:33 +08:00
    @az “人类识别会有困难”,哈哈哈哈,比 12306 人性化多了啊。。。
    Slienc7
        14
    Slienc7  
       2015-12-16 18:26:17 +08:00
    @az
    哪有困难,识别图像只有当 IP 请求次数触发上限 /不符合人类特征才有强制识别。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2534 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 09:52 · PVG 17:52 · LAX 02:52 · JFK 05:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.