苏飞论坛广告位

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

分布式系统框架(V1.3) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程 - 订阅更新

HttpHelper万能框架(V2.1) HttpHelper官方出品,无敌框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V1.9) 最牛的爬虫类,没有爬不到只有想不到 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 236|回复: 1

[HttpHelper] 怎么过百度防护?

[复制链接]
  • TA的每日心情
    郁闷
    2017-12-2 09:19
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2017-10-8 15:09:39 | 显示全部楼层 |阅读模式
    本帖最后由 qqtest 于 2017-10-8 15:10 编辑

    我要采集的是这个页面的内容 https://www.benmi.com/AuctionP.h ... =5&g_w=1000&h=1&s=1
    用HttpHelper采集得到的页面是下面这个。
    [HTML] 纯文本查看 复制代码
    <!DOCTYPE HTML>
    <html lang="en-US">
    <head>
      <meta charset="UTF-8" />
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
      <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1" />
      <meta name="robots" content="noindex, nofollow" />
      <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
      <title>安全检查中...</title>
      <style type="text/css">
        html, body {width: 100%; height: 100%; margin: 0; padding: 0;}
        body {background-color: #ffffff; font-family: Helvetica, Arial, sans-serif; font-size: 100%;}
        h1 {font-size: 1.5em; color: #404040; text-align: center;}
        p {font-size: 1em; color: #404040; text-align: center; margin: 10px 0 0 0;}
        #spinner {margin: 0 auto 30px auto; display: block;}
        .attribution {margin-top: 20px;}
      </style>
    
        <script type="text/javascript">
      //<![CDATA[
      (function(){
        var a = function() {try{return !!window.addEventListener} catch(e) {return !1} },
        b = function(b, c) {a() ? document.addEventListener("DOMContentLoaded", b, c) : document.attachEvent("onreadystatechange", b)};
        b(function(){
          var a = document.getElementById('yjs-content');a.style.display = 'block';
          setTimeout(function(){
            var s,t,o,p,b,r,e,a,k,i,n,g,f, jTIeZDf={"A":+((!+[]+!![]+[])+(+!![]))};
            t = document.createElement('div');
            t.innerHTML="<a href='/'>x</a>";
            t = t.firstChild.href;r = t.match(/https?:\/\//)[0];
            t = t.substr(r.length); t = t.substr(0,t.length-1);
            a = document.getElementById('jschl-answer');
            f = document.getElementById('challenge-form');
            ;jTIeZDf.A*=+((!+[]+!![]+!![]+[])+(+[]));jTIeZDf.A-=+((!+[]+!![]+!![]+!![]+[])+(!+[]+!![]+!![]+!![]+!![]+!![]+!![]+!![]));jTIeZDf.A+=+((+!![]+[])+(!+[]+!![]+!![]));jTIeZDf.A*=+((!+[]+!![]+!![]+[])+(!+[]+!![]+!![]+!![]+!![]+!![]+!![]+!![]+!![]));jTIeZDf.A-=+((+!![]+[])+(!+[]+!![]));jTIeZDf.A+=+((+!![]+[])+(+!![]));jTIeZDf.A+=+((!+[]+!![]+[])+(!+[]+!![]+!![]+!![]+!![]+!![]+!![]+!![]));jTIeZDf.A+=+((!+[]+!![]+[])+(!+[]+!![]+!![]+!![]+!![]+!![]+!![]));jTIeZDf.A+=+((!+[]+!![]+!![]+!![]+[])+(+[]));jTIeZDf.A*=+((!+[]+!![]+!![]+!![]+[])+(+!![]));a.value = parseInt(jTIeZDf.A, 10) + t.length; '; 121'
            f.submit();
          }, 4000);
        }, false);
      })();
      //]]>
    </script>
    
    
    </head>
    <body>
      <table width="100%" height="100%" cellpadding="20">
        <tr>
          <td align="center" valign="middle">
              <div class="yjs-browser-verification yjs-im-under-attack">
      <noscript><h1 data-translate="turn_on_js" style="color:#bd2426;">请打开浏览器的javascript,然后刷新浏览器</h1></noscript>
      <div id="yjs-content" style="display:none">
        <div>
          <div class="bubbles"></div>
          <div class="bubbles"></div>
          <div class="bubbles"></div>
        </div>
        <h1>benmi.com <span data-translate="checking_browser">浏览器安全检查中...</span></h1>
        <p data-translate="process_is_automatic"></p>
        <p data-translate="allow_5_secs">还剩 5 秒…</p>
      </div>
      <form id="challenge-form" action="/cdn-cgi/l/chk_jschl" method="get">
        <input type="hidden" name="jschl_vc" value="09f510a13928780b9f3d240b6c63e9af"/>
        <input type="hidden" name="pass" value="1507364778.127-HAW8WXpH5d"/>
        <input type="hidden" id="jschl-answer" name="jschl_answer"/>
      </form>
    </div>
    
    
              <div class="attribution"><a href="http://su.baidu.com/" target="_blank" style="font-size: 12px;"></a></div>
          </td>
        </tr>
      </table>
    </body>
    </html>


    抓包后发现他是5秒后提交到这种页面的https://www.benmi.com/cdn-cgi/l/ ... jschl_answer=955272
    jschl_vc 及pass值可以从前面页面直接获取,唯有jschl_answer的值不知道是如何计算的,js也看不懂。求大神帮助。

    只有获取了jschl_answer的值,在取得这个页面的cookies后再访问https://www.benmi.com/AuctionP.h ... =5&g_w=1000&h=1&s=1才能正常返回值 。
  • TA的每日心情
    开心
    2017-10-9 10:27
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    发表于 2017-10-9 10:35:17 | 显示全部楼层
    您需要登录后才可以回帖 登录 | 马上注册

    本版积分规则

    QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备17001017号-1 )

    GMT+8, 2017-12-18 20:46

    © 2017-2018

    快速回复 返回顶部 返回列表