王者荣耀道具页面爬虫(json格式数据)

首先这个和英雄页面是不一样的,英雄页面的图片链接是直接放在源代码里面的,直接就可以请求到,但是这个源代码里面是没有的

虽然在检查页面能够搜索到,但是应该是动态加载的,源码中搜不到该链接

然后就去看看是不是某个接口中返回的数据

刷新了一下返回了一个json

估计一些数据在这里面,我们下载下来试试

没错,那接下来就是简单的拼接了

下面是实现code

py 复制代码
import requests
import csv
from urllib.request import urlretrieve
import json

# 1. 获取JSON数据
url = "https://pvp.qq.com/web201605/js/item.json"
try:
    response = requests.get(url)
    response.raise_for_status()  # 检查HTTP错误
    data = response.json()
except Exception as e:
    print(f"获取数据失败: {e}")
    exit()

# 2. 提取item_id和item_name
items = []
for item in data:
    try:
        items.append({
            "item_id": item["item_id"],
            "item_name": item["item_name"]
        })
    except KeyError:
        print(f"跳过无效数据项: {item}")
        continue

#载图片
print(items)
for item in items:
    try:
        img_url = f"https://game.gtimg.cn/images/yxzj/img201606/itemimgo/{item['item_id']}.png"
        urlretrieve(img_url, f"D:/小说/王者荣耀武器道具/{item['item_name']}.png")
        print(f"下载成功: {item['item_name']}.png")
    except Exception as e:
        print(f"下载失败 {item['item_name']}.png: {str(e)[:50]}...")
相关推荐
JAVA不会写32 分钟前
在Mybatis plus中如何使用自定义Sql
数据库·sql
IT 小阿姨(数据库)33 分钟前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
ChinaRainbowSea1 小时前
7. LangChain4j + 记忆缓存详细说明
java·数据库·redis·后端·缓存·langchain·ai编程
爬虫程序猿1 小时前
《京东商品详情爬取实战指南》
爬虫·python
小马学嵌入式~2 小时前
嵌入式 SQLite 数据库开发笔记
linux·c语言·数据库·笔记·sql·学习·sqlite
Java小白程序员2 小时前
MyBatis基础到高级实践:全方位指南(中)
数据库·mybatis
Monly212 小时前
人大金仓:merge sql error, dbType null, druid-1.2.20
数据库·sql
不宕机的小马达3 小时前
【Mysql|第一篇】Mysql的安装与卸载、Navicat工具的使用
数据库·mysql
float_六七3 小时前
数据库连接池:性能优化的秘密武器
数据库·oracle·性能优化
码界奇点3 小时前
MongoDB vs MySQLNoSQL与SQL数据库的架构差异与选型指南
数据库·sql·mongodb·系统架构