This commit is contained in:
qsc
2025-12-03 10:18:46 +08:00
parent 520dd5b5b7
commit 3478aa977a
20 changed files with 2237 additions and 22 deletions
+30
View File
@@ -0,0 +1,30 @@
<div style="width: 1220px; margin: 0 auto;">
<h1 style="text-align: center;">剑网3交易行价格查询</h1>
<p style="text-align: center;">服务器: {{ server }}</p>
<div style="overflow-x: auto; overflow-y: hidden;">
<table style="width: 100%; border-collapse: collapse; margin: 0 auto;">
<thead>
<tr style="height: 50px; text-align: center;">
<th style="border:1px solid #000; padding:4px;">物品名称</th>
<th style="border:1px solid #000; padding:4px;">最低价</th>
<th style="border:1px solid #000; padding:4px;">总数量</th>
<th style="border:1px solid #000; padding:4px;">数据更新时间</th>
</tr>
</thead>
<tbody>
{% for item in items %}
<tr style="height: 45px; text-align: center;">
<td style="border:1px solid #000; padding:4px; text-align: left;">
<img src="{{ item.IconID }}" alt="icon" style="width:20px; height:20px; vertical-align:middle; border-radius:4px; margin-right:6px;">
{{ item.Name }}
</td>
<td style="border:1px solid #000; padding:4px;">{{ item.AvgPrice }}</td>
<td style="border:1px solid #000; padding:4px;">{{ item.SampleSize }}</td>
<td style="border:1px solid #000; padding:4px;">{{ item.Date }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
+33
View File
@@ -0,0 +1,33 @@
<div style="width: 1220px; margin: 0 auto;">
<h1 style="text-align: center" id="剑网三金价">剑网三金价</h1>
<div style="overflow-x: auto; overflow-y: hidden;">
<table style="width: 100%; border-collapse: collapse; margin: 0 auto;">
<thead>
<tr style="height: 60px; text-align: center;">
<th style="border:1px solid #000; padding:2px;">时间</th>
{% for item in items %}
<th style="border:1px solid #000; padding:2px;">{{ item.date }}</th>
{% endfor %}
</tr>
</thead>
<tbody>
<tr style="height: 50px; text-align: center;">
<td style="border:1px solid #000; padding:2px;">万宝楼</td>
{% for item in items %}
<td style="border:1px solid #000; padding:2px;">{{ item.priceWanbaolou }}</td>
{% endfor %}
</tr>
<tr style="height: 50px; text-align: center;">
<td style="border:1px solid #000; padding:2px;">贴吧</td>
{% for item in items %}
<td style="border:1px solid #000; padding:2px;">{{ item.priceTieba }}</td>
{% endfor %}
</tr>
</tbody>
</table>
</div>
</div>
+34
View File
@@ -0,0 +1,34 @@
<div style="width: 800px; margin: 0 auto;">
<h1 style="text-align: center;" id="剑网三奇遇查询">剑网3奇遇查询</h1>
<p style="text-align: center;">奇遇名称:{{ qiyuname }} 服务器:{{ server }}</p>
<div style="overflow-x: auto; overflow-y: hidden;">
<table style="width: 100%; border-collapse: collapse; margin: 0 auto;">
<thead>
<tr style="height: 50px; text-align: center;">
<th style="border:1px solid #000; padding:4px;">奇遇名称</th>
<th style="border:1px solid #000; padding:4px;">服务器</th>
<th style="border:1px solid #000; padding:4px;">角色名称</th>
<th style="border:1px solid #000; padding:4px;">触发时间</th>
</tr>
</thead>
<tbody>
{% for item in items %}
<tr style="height: 45px; text-align: center;">
<td style="border:1px solid #000; padding:4px;">{{ item.adventureName }}</td>
<td style="border:1px solid #000; padding:4px;">{{ server }}</td>
<td style="border:1px solid #000; padding:4px;">{{ item.gameName }}</td>
<td style="border:1px solid #000; padding:4px;">{{ item.time }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
<!-- 可在这里插入 Base64 图片 -->
<div style="text-align: center; margin-top: 20px;">
<img src="data:image/png;base64, {{ your_base64_string }}"
alt="奇遇趋势图"
style="max-width: 100%; height: auto;" />
</div>
</div>
+101
View File
@@ -0,0 +1,101 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>王者荣耀 — 仇人列表</title>
<style>
body {
font-family: 'Microsoft YaHei', Arial, sans-serif;
background: #f1f2f6;
margin: 0;
padding: 20px;
}
.container {
max-width: 1000px;
margin: 0 auto;
text-align: center; /* ★ 让容器内标题更自然居中 */
}
h1 {
font-size: 32px;
margin-bottom: 25px;
color: #222;
font-weight: 800;
text-align: center; /* ★ 强制居中 */
}
table {
width: 100%;
border-collapse: collapse;
background: white;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 4px 16px rgba(0,0,0,0.08);
margin-top: 10px;
text-align: left; /* 不影响表格内容 */
}
thead {
background: #d93939;
color: white;
font-size: 18px;
}
th, td {
padding: 14px 12px;
border-bottom: 1px solid #eee;
font-size: 16px;
}
tbody tr:hover {
background: #fff2f2;
}
.text-col {
max-width: 360px;
line-height: 1.5em;
word-break: break-word;
font-weight: 600;
color: #333;
}
</style>
</head>
<body>
<div class="container">
<h1>王者荣耀 — 仇人列表</h1>
<table>
<thead>
<tr>
<th>ID</th>
<th>名称</th>
<th>英雄</th>
<th>分路</th>
<th>记录者</th>
<th>时间</th>
<th>描述</th>
</tr>
</thead>
<tbody>
{% for m in lists %}
<tr>
<td>{{ m.id }}</td>
<td>{{ m.name }}</td>
<td>{{ m.hero }}</td>
<td>{{ m.fenglu }}</td>
<td>{{ m.user }}</td>
<td>{{ m.time }}</td>
<td class="text-col">{{ m.text }}</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</body>
</html>
+240
View File
@@ -0,0 +1,240 @@
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>王者荣耀 — 对局列表</title>
<style>
body {
font-family: 'Microsoft YaHei', Arial, sans-serif;
background: #f1f2f6;
margin: 0;
padding: 20px;
}
.container {
max-width: 900px;
margin: 0 auto;
}
h1 {
text-align: center;
font-size: 32px;
margin-bottom: 25px;
color: #222;
font-weight: 800;
}
/* 卡片基础样式 */
.match-card {
display: flex;
border-radius: 18px;
padding: 16px;
margin-bottom: 18px;
position: relative;
box-shadow: 0 4px 16px rgba(0,0,0,0.08);
}
/* 背景色 */
.win { background: #e5f4ff; }
.lose { background: #ffe9e9; }
.draw { background: #f1f2f3; }
.hero-box img {
width: 76px;
height: 76px;
border-radius: 10px;
object-fit: cover;
}
.hero-desc {
text-align: center;
margin-top: 8px;
font-size: 18px;
font-weight: bold;
color: #333;
}
.content {
flex: 1;
padding-left: 15px;
font-size: 16px;
color: #333;
position: relative;
}
/* 右上角标签区域 */
.tag-area {
position: absolute;
right: 16px;
top: 16px;
display: flex;
gap: 8px;
}
/* 胜负标签 */
.result-tag {
padding: 6px 12px;
border-radius: 8px;
font-size: 14px;
font-weight: bold;
color: white;
}
.win-tag { background: #4a90e2; }
.lose-tag { background: #d93939; }
.draw-tag { background: #777; }
/* 对局时间 + 对局类型 */
.info-line-time {
font-size: 18px;
color: #000;
margin-bottom: 6px;
}
/* 段位 + 星星 */
.rank-stars {
font-size: 16px;
color: #2ecc71;
font-weight: bold;
margin-bottom: 6px;
}
/* KDA 信息 */
.kda-info {
font-size: 16px;
font-weight: bold;
color: #555;
margin-bottom: 6px;
}
/* 巅峰赛积分 */
.master-score {
font-size: 16px;
font-weight: bold;
color: #056a3a;
margin-bottom: 6px;
}
/* 评分显示 */
.score-badge {
position: absolute;
right: 16px;
bottom: 16px;
background: #ffd700;
color: #222;
font-size: 20px;
font-weight: 900;
padding: 6px 14px;
border-radius: 12px;
box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}
/* 新增成就标签 */
.achievement-tags {
margin-top: 8px;
display: flex;
flex-wrap: wrap;
gap: 6px;
}
.achievement-tags span {
background: rgba(0, 0, 0, 0.6);
color: #fff;
font-weight: bold;
padding: 6px 10px;
border-radius: 14px;
font-size: 14px;
text-shadow: 0 1px 2px rgba(0,0,0,0.5);
}
</style>
</head>
<body>
<div class="container">
<h1>王者荣耀 — 对局列表</h1>
{% for m in data %}
<div class="match-card
{% if m.gameresult == 1 %}win
{% elif m.gameresult == 2 %}lose
{% else %}draw
{% endif %}">
<div class="hero-box">
<img src="{{ m.heroIcon }}">
<div class="hero-desc">{{ m.desc }}</div>
</div>
<div class="content">
<!-- 右上角标签(evaluate + MVP PNG -->
<div class="tag-area">
{% if m.evaluateUrlV3 %}
<img src="{{ m.evaluateUrlV3 }}"
style="height: 32px; border-radius: 6px;">
{% endif %}
{% if m.mvpUrlV3 %}
<img src="{{ m.mvpUrlV3 }}"
style="height: 32px; border-radius: 6px;">
{% endif %}
<div class="result-tag
{% if m.gameresult == 1 %}win-tag
{% elif m.gameresult == 2 %}lose-tag
{% else %}draw-tag
{% endif %}">
{% if m.gameresult == 1 %}胜利
{% elif m.gameresult == 2 %}失败
{% else %}平局
{% endif %}
</div>
</div>
<!-- 对局时间 + 对局类型 -->
<div class="info-line-time">
{{ m.gametime }} · {{ m.mapName }}
</div>
<!-- 段位 + 星星 -->
<div class="rank-stars">
{{ m.roleJobName }} · ⭐{{ m.stars }}
</div>
<!-- 巅峰赛积分(原 KDA 位置) -->
<div class="master-score">
巅峰赛积分 {{ m.oldMasterMatchScore }} → {{ m.newMasterMatchScore }}
</div>
<!-- KDA 信息(原巅峰赛位置) -->
<div class="kda-info">
击杀 {{ m.killcnt }} 死亡 {{ m.deadcnt }} 助攻 {{ m.assistcnt }} 时长 {{ m.time_str }}
</div>
<!-- 新增成就显示 -->
<div class="achievement-tags">
{% if m.godLikeCnt > 0 %}<span>超神 × {{ m.godLikeCnt }}</span>{% endif %}
{% if m.firstBlood > 0 %}<span>一血</span>{% endif %}
{% if m.hero1TripleKillCnt > 0 %}<span>三杀 × {{ m.hero1TripleKillCnt }}</span>{% endif %}
{% if m.hero1UltraKillCnt > 0 %}<span>四杀 × {{ m.hero1UltraKillCnt }}</span>{% endif %}
{% if m.hero1RampageCnt > 0 %}<span>五杀 × {{ m.hero1RampageCnt }}</span>{% endif %}
</div>
<!-- 评分放右下角 -->
<div class="score-badge">
评分 {{ m.gradeGame }}
</div>
</div>
</div>
{% endfor %}
</div>
</body>
</html>
+65
View File
@@ -0,0 +1,65 @@
<div style="max-width: 800px; margin: 0 auto; font-family: 'Microsoft YaHei', sans-serif; color: #000; text-align: center;">
<!-- 商品基本信息 -->
<h1 style="margin-bottom: 5px;">{{ showName }} ({{ goodsAlias }})</h1>
<img src="{{ imgs }}" alt="{{ showName }}" style="width: 100%; max-width: 600px; margin-bottom: 8px;">
<p style="margin: 4px 0;">{{ goodsDesc }}</p>
<p style="margin: 4px 0;"><strong>发布时间:</strong> {{ publishTime.split('T')[0] if publishTime else '未知' }}</p>
<p style="margin: 4px 0;"><strong>参考价格:</strong> {{ priceNum }} 元</p>
<!-- 双列表格 -->
<div style="display: flex; gap: 10px; margin-top: 15px; flex-wrap: wrap; justify-content: center;">
<!-- 万宝楼公示 -->
<div style="flex: 1; min-width: 300px; border:1px solid #000; overflow:hidden;">
<div style="padding:4px; font-weight:bold; text-align:center;">万宝楼公示</div>
<div style="overflow-x:auto;">
<table style="width:100%; border-collapse:collapse; margin:0 auto; text-align:center; font-size:0.9em;">
<thead>
<tr>
<th style="border:1px solid #000; padding:2px;">剩余时间</th>
<th style="border:1px solid #000; padding:2px;">服务器</th>
<th style="border:1px solid #000; padding:2px;">价格</th>
</tr>
</thead>
<tbody>
{% for item in wblgs %}
<tr>
<td style="border:1px solid #000; padding:2px;">{{ item.replyTime }}</td>
<td style="border:1px solid #000; padding:2px;">{{ item.belongQf2 }}</td>
<td style="border:1px solid #000; padding:2px;">{{ item.priceNum }}元</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
<!-- 万宝楼在售 -->
<div style="flex: 1; min-width: 300px; border:1px solid #000; overflow:hidden;">
<div style="padding:4px; font-weight:bold; text-align:center;">万宝楼在售</div>
<div style="overflow-x:auto;">
<table style="width:100%; border-collapse:collapse; margin:0 auto; text-align:center; font-size:0.9em;">
<thead>
<tr>
<th style="border:1px solid #000; padding:2px;">剩余时间</th>
<th style="border:1px solid #000; padding:2px;">服务器</th>
<th style="border:1px solid #000; padding:2px;">价格</th>
</tr>
</thead>
<tbody>
{% for item in wblzs %}
<tr>
<td style="border:1px solid #000; padding:2px;">{{ item.replyTime }}</td>
<td style="border:1px solid #000; padding:2px;">{{ item.belongQf2 }}</td>
<td style="border:1px solid #000; padding:2px;">{{ item.priceNum }}元</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
</div>
+3
View File
@@ -0,0 +1,3 @@
<div style="text-align:center; margin-bottom:20px;">
<img src="data:image/jpeg;base64,{{ img_base64 }}" style="max-width:100%; border-radius:10px;">
</div>