• Python某网站壁纸图片数据, 实现网站JS逆向解密


    嗨喽~大家好呀,这里是魔王呐 ❤ ~!

    学了那么久的知识点啦~是时候犒劳犒劳自己了

    这不~就给大家带来一波小姐姐壁纸采集!!!

    python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取

    本次使用环境使用:

    • python 3.8

    • pycharm 2022专业版 >>> 免费使用教程文末名片获取

    模块使用/安装:

    • requests --> pip install requests

    • execjs --> pip install PyExecJS

    • json

    第三方模块安装:

    1. win + R 输入 cmd 点击确定, 输入安装命令 pip install 模块名 (pip install requests) 回车

    2. 在pycharm中点击Terminal(终端) 输入安装命令

    如果出现爆红, 可能是因为 网络连接超时, 可切换国内镜像源,命令如下:

    pip install -i https://pypi.doubanio.com/simple/ requests
    
    • 1

    相对应的安装包/安装教程/激活码/使用教程/学习资料/工具插件 可以加V:python10080(好友验证备注:6 ,否则可能不会通过)

    案例基本实现的步骤:

    1. 找数据对应的链接地址

    2. 使用代码发送网络请求

    3. 数据解析技术(提取需要的数据)

    4. 数据保存

    代码展示

    导入模块

    # 导入数据请求模块
    import requests
    # 导入编译js代码模块
    import execjs
    # 导入json模块
    import json
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    获取加密数据

    '''
    学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:926207505
    寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
    '''
    # 请求头
    headers = {
        'Referer':'https://bz.zzzmh.cn/',
        'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36'
    }
    # 请求链接
    url = 'https://api.zzzmh.cn/bz/v3/getData'
    for page in range(1, 11):
        # 请求参数
        data = {
            "size":24,
            "current":page,
            "sort":0,
            "category":0,
            "resolution":0,
            "color":0,
            "categoryId":0,"ratio":0
        }
        # 发送请求
        response = requests.post(url=url, json=data, headers=headers)
        # 获取响应json数据
        json_data = response.json()
        # 解析数据, 提取加密数据内容
        result = json_data['result']
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    通过python代码调用js代码获取明文数据

    '''
    学习中遇到问题没人解答?小编创建了一个Python学习交流QQ群:926207505
    寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
    '''
        # 读取js代码文件
        f = open('壁纸.js', 'r', encoding='utf-8').read()
        # 编译js文件内容
        js_code = execjs.compile(f)
        # 调用js代码函数 --> 函数名传入字符串
        data = js_code.call('_0xc7dd1', result)
        # json字符串数据转成json字典数据
        info = json.loads(data)
        # 解析数据, 提取图片ID
        for index in info['list']:
            # 提取图片ID
            img_id = index['i']
            # 图片链接: https://api.zzzmh.cn/bz/v3/getUrl/61ac5e440dac4d97a6624e05044c407421
            t = index['t']
            if t == 2:
                img_url = f'https://api.zzzmh.cn/bz/v3/getUrl/{img_id}21'
            elif t == 1:
                img_url = f'https://api.zzzmh.cn/bz/v3/getUrl/{img_id}11'
            # 获取图片数据内容
            img_content = requests.get(url=img_url, headers=headers).content
            with open(f'img\\{img_id}.jpg', mode='wb') as img:
                img.write(img_content)
            print(img_url)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27

    图片展示





    尾语

    最后感谢你观看我的文章呐~本次航班到这里就结束啦 🛬

    希望本篇文章有对你带来帮助 🎉,有学习到一点知识~

    躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。

    最后,宣传一下呀~👇👇👇更多源码、资料、素材、解答、交流皆点击下方名片获取呀👇👇

  • 相关阅读:
    OpenGL 透明度
    Java进阶(9)——冒泡排序、选择排序、二分法查找
    【UCIe】UCIe Multi-Module Link 介绍
    leetcode题目分析(一)leetcode155最小栈
    【单元测试】测试用例编写
    Python3操作redis百万级数据迁移,单机到单机,集群到集群
    【ACWing】2524. 树链剖分II
    fastapi_No.18_后台应用
    刷题笔记(js)
    nginx配置反向代理时的路径问题
  • 原文地址:https://blog.csdn.net/python56123/article/details/134201941