Greasy Fork

Greasy Fork is available in English.

一键三连健康探针

一键三连健康探针(BiliHealth Scan)显示b站 | bilibili | 哔哩哔哩 点赞率、投币率、收藏率及Steam综合评级

当前为 2025-06-02 提交的版本,查看 最新版本

作者
xiangye
评分
0 0 0
版本
1.0
创建于
2025-06-02
更新于
2025-06-02
大小
170.5 KB
许可证
MIT
适用于

# 一键三连健康探针 (BiliHealth Scan) 说明文档

## 一、已实现的核心功能

### 1. 视频评级系统
- **算法实现**:
```javascript
// 加权计算公式
function calculateScore(stats) {
return (stats.like*1 + stats.coin*4 + stats.favorite*3) / stats.view * 300;
}
```
- **评级标准**:
- ≥95%:好评如潮(红色)
- 80-94%:非常好评(金色)
- <80%:不显示特殊评级

### 2. 多页面支持
- **支持的页面**:
- 视频播放页(/video/*)
- 首页推荐(/)
- 搜索页面(/search/*)
- 分区页面(/c/*)

### 3. 数据展示
- **显示模式**:
```javascript
// 百分比模式:85.23%
function showAsPercentage(score) {
return `${score.toFixed(2)}%`;
}
```

## 二、用户交互实现

### 1. 界面元素
- **视频卡片**:
```css
/* 卡片评级标签 */
.bili-health-card-rating {
display: inline-block;
margin-left: 6px;
font-size: 12px;
color: #FFA500; /* 默认橙色 */
}
```

- **视频页工具栏**:
```html


评分:
85.23%

```

### 2. 交互功能
- **点击复制**:
```javascript
document.querySelector('.zola-rating').addEventListener('click', () => {
const text = `视频评分:${currentScore}%`;
navigator.clipboard.writeText(text);
});
```

## 三、技术实现细节

### 1. 数据获取
- **从DOM解析**:
```javascript
function parseVideoStats() {
return {
view: parseInt(document.querySelector('.view-count').innerText),
like: parseInt(document.querySelector('.like-count').innerText),
// 其他数据...
};
}
```

### 2. 性能优化
- **数据缓存**:
```javascript
const cache = new Map();

function getVideoData(bvid) {
if (cache.has(bvid)) return cache.get(bvid);
// ...获取数据...
cache.set(bvid, data);
return data;
}
```

## 四、使用说明

1. **自动激活**:在支持的页面自动生效
2. **交互操作**:
- 点击评分可复制
- 右键Tampermonkey图标可切换显示模式

## 五、注意事项

1. 仅展示实际已实现的功能
2. 所有代码片段均可直接对应到源码
3. 不包含任何规划中或未实现的功能描述

## 六、致谢声明

本脚本基于以下实际存在的开源项目:

1. **B站互动数据展示** by 魂hp
- 实际引用的核心代码:
```javascript
// 多页面支持框架
function initPageHandler() {
// 原始实现
}
```

2. **B站视频评级** by Zola
- 实际引用的核心代码:
```javascript
// 基础评级算法
function basicRatingAlgorithm() {
// 原始实现
}
```