某豆*DATA数据加密

一、确定逻辑

获取的数据复制给 window.__DATA__

在这里插入图片描述

全局搜索,确定位置

image-20211203112709923

跟进去发现,在这个位置生成数据

image-20211203112823406

验证一下

image-20211203113006739

二、调试

巴拉巴拉

三、搭建解密服务

var r = "WKVZcEaRd7/………………";


var i = 16
var Q = 4096
var p = {
    start: 2,
    end: 7
}
var K = {}

…………………………………………………………………………………………………………………………………………………此处省略N字……………………………………………………………………………………………………………………………………………………………………………………

function decrypt(r) {
    var a = encry2arr_from(r, "base64") // 0
        ,
        s = Math.max(Math.floor((a.length - 2 * i) / 3), 0) // 40
        ,
        u = a_slice(a, s, s + i); // 41
    a = concat([a_slice(a, 0, s), a_slice(a, s + i)]); // 43  45  47
    var c_data = hash(concat([u, encry2arr_from("")])); // 49  67  69
    var l = {}
    l[c_data] = a
    var data = n_n((l = {}, l[c_data] = a, l))
    // console.log(data)
    // console.log(data.payload.items[0])
    var d_temp = data.payload.items
    var ret_val = JSON.stringify(d_temp)
    return ret_val
}

function get_page(arg){
    console.log(arg)
    return decrypt(arg)
}

module.exports = {
    get_page
}

spider_server.js

var express = require('express');
var douban = require('./douban');
var app = express();
const multipart = require('connect-multiparty')
const multipartyMiddleware = multipart()

app.post('/db', multipartyMiddleware, (req, res) => {
    console.log(req)
    var result = douban.get_page(req.body.p1)
    res.send(result)
})


app.listen(23341, function () {
})

在这里插入图片描述

全部代码放在Blog中
console.log("全部代码放在公众号和Blog中")
console.log("公众号:虫术")
console.log("关注回复:doub")
Blog:http://404nofoundx.top/
posted @ 2021-12-03 11:49  FalsePlus  阅读(11)  评论(0)    收藏  举报