某网站获取到正文内容

  1. 网址
aHR0cHM6Ly9pdC5zem9ubGluZS5uZXQvc2h1eml6aG9uZ2d1by8yMDIzMDMyOS8yMDIzMDM3ODAzNDAuaHRtbA==
  1. 抓包

某网站获取到正文内容_第1张图片
某网站获取到正文内容_第2张图片

猜想:从图中对比发现取第一次请求返回的Set-Cookie作为第二次请求的cookies,不过需要把Set-Cookie中的secret-100(此时注意int和str类型的来回转换),名称变为r,把Set-Cookie中的token变为t

  1. 第一次请求返回:

js反混淆解密,见(https://blog.csdn.net/CaliXz/article/details/127405966)

function getCookie(cname) {
    var name = cname + "=";
    var ca = document.cookie.split(';');
    for (var i = 0; i < ca.length; i++) {
        var c = ca[i].trim();
        if (c.indexOf(name) == 0) return c.substring(name.length, c.length)
    }
    return ""
}   //这段代码的作用是获取指定名称的cookie值,并将其返回
var token = getCookie("token");
var secret = parseInt(getCookie("secret"));     
if (token == "" || secret == "") {
    setTimeout("location=location; ", 3000)
}      //如果为空
else {
    var random = secret - 100;
    document.cookie = "token=; expires=Thu, 01 Jan 1970 00:00:00 UTC;";
    document.cookie = "secret=; expires=Thu, 01 Jan 1970 00:00:00 UTC;";
    document.cookie = "t=" + token + ";";
    document.cookie = "r=" + random + ";";
    window.location.reload(true)
}

证实上述猜想,获取cookies第二次请求得到正文内容。

你可能感兴趣的:(javascript,爬虫,js混淆)