爬虫案例十一js逆向数位观察网

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

提示:这里可以添加本文要记录的大概内容:

爬虫案例十一js逆向数位观察网


提示:以下是本篇文章正文内容,下面案例可供参考

一、网站分析


二、代码

python代码

c 复制代码
"""
网站:https://www.swguancha.com/
"""
import requests
import json
import execjs

url = "https://app.swguancha.com/client/v1/cPublic/consumer/baseInfo"


f = open('sm.js',mode='r',encoding='utf-8')
js_code = f.read()
js = execjs.compile(js_code)
headers = {
	"":"" # 头自行添加
}

data ={
    "size":6,
    "current":3,
    "propertyCode":["DISTRICT_PROP_GJ025_RJDQSCZZ","DISTRICT_PROP_GJ117_NMSYGGQDCYYCLS","DISTRICT_PROP_GJ001_NMHJRK"],
    "dimensionTime":"2019",
    "levelType":2}

data_str = json.dumps(data, separators=(',', ':'))
resp = requests.post(url,data=data_str,headers=headers)
data = js.call("main",resp.text)
print(data)
#{'code': 0, 'msg': None, 'data': {'current': 3, 'size': 6, 'total': 351, 'data': [{'cityName': '郑州市', 'cityCode': '410100', 'cityKpiNum': 138, 'cityImage': 'http://imgs.pub.swguancha.com/image/city_pic_bdbk_410100.jpg',
# 'viewCount': 21132, 'sortNum': 13, 'simpleVOList': [{'districtId': '410100', 'districtName': '郑州市', 'propertyName': '年末实有公共汽(电)车营运车辆数', 'simpleName': '公共汽(电)车量', 'propertyCode': 'DISTRICT_PROP_GJ117_NMSYGGQDCYYCLS', 'propertyValue': '6316', 'valueUnit': '辆',
c 复制代码
var u = require('crypto-js');
var l = "QV1f3nHn2qm7i3xrj3Y9K9imDdGTjTu9";
function main(t_data) {
    var n = u.enc.Utf8.parse(l)
        , r = u.AES.decrypt(t_data, n, {
        mode: u.mode.ECB,
        padding: u.pad.Pkcs7
    });
    i = r.toString(u.enc.Utf8);
    s = JSON.parse(i);
    return s
}

总结

在堆栈中发现promise,可以先尝试搜索interceptors,对于一般简单的网站可能能很快就能解决。

相关推荐
窝子面8 小时前
手搓最简前后端协作-node
javascript·数据库
人邮异步社区9 小时前
怎么把C语言学到精通?
c语言·开发语言
kyriewen9 小时前
我让AI给前端项目做了一次完整的Code Review——它和人类的差距,比我想的大得多
前端·javascript·ai编程
心平气和量大福大9 小时前
C#-WPF-控件-TextBox 数据绑定
开发语言·c#·wpf
ttwuai9 小时前
Cursor 生成 CRUD 后,Go 后台接口别只测 200:JWT、RBAC 和 tenant_id 怎么验
开发语言·后端·golang
এ慕ོ冬℘゜10 小时前
前端基础:什么是时间戳?JS获取时间戳三种方法与实战用途
开发语言·前端·javascript
执明wa10 小时前
LayoutInflater详解: XML是如何变成View的?
android·xml·开发语言·android studio
一次旅行10 小时前
Python+大模型端到端自动化日报系统
开发语言·python·自动化
sugar__salt11 小时前
Vue3 表单双向绑定与响应式核心 API 技术详解
前端·javascript·vue.js
噢,我明白了11 小时前
java中Excel的导入和导出(EasyExcel)
java·开发语言·excel