We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/lizouzt/TrendRadar'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>热点新闻分析</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js" integrity="sha512-BNaRQnYJYiPSqHHDb58B0yaPfCu+Wgds8Gp/gU33kqBtgNS4tSPHuGibyoeqMV/TJlSKda6FXzoEyYGjTe+vXA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<style>
* { box-sizing: border-box; }
body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
margin: 0;
padding: 16px;
background: #fafafa;
color: #333;
line-height: 1.5;
}
.container {
max-width: 600px;
margin: 0 auto;
background: white;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 2px 16px rgba(0,0,0,0.06);
}
.header {
background: linear-gradient(135deg, #7a72ff 0%, #3aafed 100%);
color: #fff;
padding: 32px 24px;
text-align: center;
position: relative;
}
.save-buttons {
position: absolute;
top: 16px;
right: 16px;
display: flex;
gap: 8px;
}
.save-btn {
background: rgba(255, 255, 255, 0.2);
border: 1px solid rgba(255, 255, 255, 0.3);
color: white;
padding: 8px 16px;
border-radius: 6px;
cursor: pointer;
font-size: 13px;
font-weight: 500;
transition: all 0.2s ease;
backdrop-filter: blur(10px);
white-space: nowrap;
}
.save-btn:hover {
background: rgba(255, 255, 255, 0.3);
border-color: rgba(255, 255, 255, 0.5);
transform: translateY(-1px);
}
.save-btn:active {
transform: translateY(0);
}
.save-btn:disabled {
opacity: 0.6;
cursor: not-allowed;
}
.header-title {
font-size: 22px;
font-weight: 700;
margin: 0 0 20px 0;
}
.header-info {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
font-size: 14px;
opacity: 0.95;
}
.info-item {
text-align: center;
}
.info-label {
display: block;
font-size: 12px;
opacity: 0.8;
margin-bottom: 4px;
}
.info-value {
font-weight: 600;
font-size: 16px;
}
.content {
padding: 24px;
}
.word-group {
margin-bottom: 40px;
}
.word-group:first-child {
margin-top: 0;
}
.word-header {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 20px;
padding-bottom: 8px;
border-bottom: 1px solid #f0f0f0;
}
.word-info {
display: flex;
align-items: center;
gap: 12px;
}
.word-name {
font-size: 17px;
font-weight: 600;
color: #1a1a1a;
}
.word-count {
color: #666;
font-size: 13px;
font-weight: 500;
}
.word-count.hot { color: #dc2626; font-weight: 600; }
.word-count.warm { color: #ea580c; font-weight: 600; }
.word-index {
color: #999;
font-size: 12px;
}
.news-item {
margin-bottom: 20px;
padding: 16px 0;
border-bottom: 1px solid #f5f5f5;
position: relative;
display: flex;
gap: 12px;
align-items: center;
}
.news-item:last-child {
border-bottom: none;
}
.news-item.new::after {
content: "NEW";
position: absolute;
top: 12px;
right: 0;
background: #fbbf24;
color: #92400e;
font-size: 9px;
font-weight: 700;
padding: 3px 6px;
border-radius: 4px;
letter-spacing: 0.5px;
}
.news-number {
color: #999;
font-size: 13px;
font-weight: 600;
min-width: 20px;
text-align: center;
flex-shrink: 0;
background: #f8f9fa;
border-radius: 50%;
width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
align-self: flex-start;
margin-top: 8px;
}
.news-content {
flex: 1;
min-width: 0;
padding-right: 40px;
}
.news-item.new .news-content {
padding-right: 50px;
}
.news-header {
display: flex;
align-items: center;
gap: 8px;
margin-bottom: 8px;
flex-wrap: wrap;
}
.source-name {
color: #666;
font-size: 12px;
font-weight: 500;
}
.rank-num {
color: #fff;
background: #6b7280;
font-size: 10px;
font-weight: 700;
padding: 2px 6px;
border-radius: 10px;
min-width: 18px;
text-align: center;
}
.rank-num.top { background: #dc2626; }
.rank-num.high { background: #ea580c; }
.time-info {
color: #999;
font-size: 11px;
}
.count-info {
color: #059669;
font-size: 11px;
font-weight: 500;
}
.news-title {
font-size: 15px;
line-height: 1.4;
color: #1a1a1a;
margin: 0;
}
.news-link {
color: #2563eb;
text-decoration: none;
}
.news-link:hover {
text-decoration: underline;
}
.news-link:visited {
color: #7c3aed;
}
.topic-trend-section {
margin-top: 40px;
padding-top: 24px;
border-top: 2px solid #f0f0f0;
}
.topic-trend-title {
color: #1a1a1a;
font-size: 16px;
font-weight: 600;
margin: 0 0 20px 0;
}
.viral-topic-item {
padding: 16px 0;
border-bottom: 1px solid #f5f5f5;
}
.viral-topic-item:last-child {
border-bottom: none;
}
.viral-topic-header {
display: flex;
align-items: center;
gap: 12px;
margin-bottom: 12px;
}
.viral-topic-keyword {
font-size: 16px;
font-weight: 600;
}
.topic-item {
display: flex;
align-items: center;
gap: 12px;
padding: 8px 0;
border-bottom: 1px solid #f9f9f9;
}
.topic-item:last-child {
border-bottom: none;
}
.viral-topic-stats {
font-size: 12px;
color: #666;
}
.viral-topic-stats .new { color: #dc2626; font-weight: bold; }
.viral-topic-stats .up { color: #f59e0b; font-weight: bold; }
.viral-topic-stats .level-high { color: #dc2626; font-weight: bold; }
.viral-topic-stats .level-mid { color: #f59e0b; font-weight: bold; }
.viral-sample-titles {
list-style: none;
padding-left: 16px;
margin: 0;
font-size: 13px;
}
.viral-sample-titles li {
color: #666;
padding: 4px 0;
position: relative;
}
.viral-sample-titles li::before { content: '▪'; position: absolute; left: -14px; color: #ccc; }
.new-section {
margin-top: 40px;
padding-top: 24px;
border-top: 2px solid #f0f0f0;
}
.new-section-title {
color: #1a1a1a;
font-size: 16px;
font-weight: 600;
margin: 0 0 20px 0;
}
.new-source-group {
margin-bottom: 24px;
}
.new-source-title {
color: #666;
font-size: 13px;
font-weight: 500;
margin: 0 0 12px 0;
padding-bottom: 6px;
border-bottom: 1px solid #f5f5f5;
}
.new-item {
display: flex;
align-items: center;
gap: 12px;
padding: 8px 0;
border-bottom: 1px solid #f9f9f9;
}
.new-item:last-child {
border-bottom: none;
}
.new-item-number {
color: #999;
font-size: 12px;
font-weight: 600;
min-width: 18px;
text-align: center;
flex-shrink: 0;
background: #f8f9fa;
border-radius: 50%;
width: 20px;
height: 20px;
display: flex;
align-items: center;
justify-content: center;
}
.new-item-rank {
color: #fff;
background: #6b7280;
font-size: 10px;
font-weight: 700;
padding: 3px 6px;
border-radius: 8px;
min-width: 20px;
text-align: center;
flex-shrink: 0;
}
.new-item-rank.top { background: #dc2626; }
.new-item-rank.high { background: #ea580c; }
.new-item-content {
flex: 1;
min-width: 0;
}
.new-item-title {
font-size: 14px;
line-height: 1.4;
color: #1a1a1a;
margin: 0;
}
.error-section {
background: #fef2f2;
border: 1px solid #fecaca;
border-radius: 8px;
padding: 16px;
margin-bottom: 24px;
}
.error-title {
color: #dc2626;
font-size: 14px;
font-weight: 600;
margin: 0 0 8px 0;
}
.error-list {
list-style: none;
padding: 0;
margin: 0;
}
.error-item {
color: #991b1b;
font-size: 13px;
padding: 2px 0;
font-family: 'SF Mono', Consolas, monospace;
}
.footer {
margin-top: 32px;
padding: 20px 24px;
background: #f8f9fa;
border-top: 1px solid #e5e7eb;
text-align: center;
}
.footer-content {
font-size: 13px;
color: #6b7280;
line-height: 1.6;
}
.footer-link {
color: #4f46e5;
text-decoration: none;
font-weight: 500;
transition: color 0.2s ease;
}
.footer-link:hover {
color: #7c3aed;
text-decoration: underline;
}
.project-name {
font-weight: 600;
color: #374151;
}
@media (max-width: 480px) {
body { padding: 12px; }
.header { padding: 24px 20px; }
.content { padding: 20px; }
.footer { padding: 16px 20px; }
.header-info { grid-template-columns: 1fr; gap: 12px; }
.news-header { gap: 6px; }
.news-content { padding-right: 45px; }
.news-item { gap: 8px; }
.new-item { gap: 8px; }
.news-number { width: 20px; height: 20px; font-size: 12px; }
.save-buttons {
position: static;
margin-bottom: 16px;
display: flex;
gap: 8px;
justify-content: center;
flex-direction: column;
width: 100%;
}
.save-btn {
width: 100%;
}
}
</style>
</head>
<body>
<div class="container">
<div class="header">
<div class="save-buttons">
<button class="save-btn" onclick="saveAsImage()">保存为图片</button>
<button class="save-btn" onclick="saveAsMultipleImages()">分段保存</button>
</div>
<div class="header-title">热点新闻分析</div>
<div class="header-info">
<div class="info-item">
<span class="info-label">报告类型</span>
<span class="info-value">实时分析</span>
</div>
<div class="info-item">
<span class="info-label">新闻总数</span>
<span class="info-value">33 条</span>
</div>
<div class="info-item">
<span class="info-label">热点新闻</span>
<span class="info-value">1 条</span>
</div>
<div class="info-item">
<span class="info-label">生成时间</span>
<span class="info-value">12-24 05:11</span>
</div>
</div>
</div>
<div class="content">
<div class="word-group">
<div class="word-header">
<div class="word-info">
<div class="word-name">特斯拉 马斯克</div>
<div class="word-count ">1 条</div>
</div>
<div class="word-index">1/1</div>
</div>
<div class="news-item new">
<div class="news-number">1</div>
<div class="news-content">
<div class="news-header">
<span class="source-name">财联社热门</span><span class="rank-num ">13</span><span class="time-info">05时11分</span>
</div>
<div class="news-title"><a href="https://www.cls.cn/detail/2237664" target="_blank" class="news-link">短短47天又多100万用户!马斯克的卫星互联网业务增速“起飞”</a>
</div>
</div>
</div>
</div>
<div class="topic-trend-section">
<div class="topic-trend-title">🔥 异常热度话题</div>
<div class="viral-topic-item">
<div class="viral-topic-header">
<div class="viral-topic-keyword">男子头孢停药72小时喝酒后休克</div>
<div class="viral-topic-stats">
3条提及 · <span class="up">↑3%</span> · <span class="level-mid">中热度</span>
</div>
</div>
<ul class="viral-sample-titles"><li>男子头孢停药72小时喝酒后休克</li><li>男子头孢停药72小时喝酒后休克</li><li>男子头孢停药72小时喝酒后休克</li></ul></div></div>
<div class="topic-trend-section">
<div class="topic-trend-title">✨ 关注话题趋势</div>
<div class="word-group">
<div class="word-header">
<div class="word-info">
<div class="word-name">自动驾驶</div>
<div class="word-count">9 条提及 <span style="color: #dc2626;">(↑0.00%)</span></div>
</div>
</div>
<div class="news-item">
<div class="news-content" style="padding-right: 0;">
<img src="data:image/png;base64,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" alt="自动驾驶 趋势图" style="width: 100%; height: auto;" />
</div>
</div>
</div></div>
</div>
<div class="footer">
<div class="footer-content">
</div>
</div>
</div>
<script>
async function saveAsImage() {
const button = event.target;
const originalText = button.textContent;
try {
button.textContent = '生成中...';
button.disabled = true;
window.scrollTo(0, 0);
// 等待页面稳定
await new Promise(resolve => setTimeout(resolve, 200));
// 截图前隐藏按钮
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'hidden';
// 再次等待确保按钮完全隐藏
await new Promise(resolve => setTimeout(resolve, 100));
const container = document.querySelector('.container');
const canvas = await html2canvas(container, {
backgroundColor: '#ffffff',
scale: 1.5,
useCORS: true,
allowTaint: false,
imageTimeout: 10000,
removeContainer: false,
foreignObjectRendering: false,
logging: false,
width: container.offsetWidth,
height: container.offsetHeight,
x: 0,
y: 0,
scrollX: 0,
scrollY: 0,
windowWidth: window.innerWidth,
windowHeight: window.innerHeight
});
buttons.style.visibility = 'visible';
const link = document.createElement('a');
const now = new Date();
const filename = `TrendRadar_热点新闻分析_${now.getFullYear()}${String(now.getMonth() + 1).padStart(2, '0')}${String(now.getDate()).padStart(2, '0')}_${String(now.getHours()).padStart(2, '0')}${String(now.getMinutes()).padStart(2, '0')}.png`;
link.download = filename;
link.href = canvas.toDataURL('image/png', 1.0);
// 触发下载
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
button.textContent = '保存成功!';
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
} catch (error) {
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'visible';
button.textContent = '保存失败';
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
}
}
async function saveAsMultipleImages() {
const button = event.target;
const originalText = button.textContent;
const container = document.querySelector('.container');
const scale = 1.5;
const maxHeight = 5000 / scale;
try {
button.textContent = '分析中...';
button.disabled = true;
// 获取所有可能的分割元素
const newsItems = Array.from(container.querySelectorAll('.news-item'));
const wordGroups = Array.from(container.querySelectorAll('.word-group'));
const newSection = container.querySelector('.new-section');
const errorSection = container.querySelector('.error-section');
const header = container.querySelector('.header');
const footer = container.querySelector('.footer');
// 计算元素位置和高度
const containerRect = container.getBoundingClientRect();
const elements = [];
// 添加header作为必须包含的元素
elements.push({
type: 'header',
element: header,
top: 0,
bottom: header.offsetHeight,
height: header.offsetHeight
});
// 添加错误信息(如果存在)
if (errorSection) {
const rect = errorSection.getBoundingClientRect();
elements.push({
type: 'error',
element: errorSection,
top: rect.top - containerRect.top,
bottom: rect.bottom - containerRect.top,
height: rect.height
});
}
// 按word-group分组处理news-item
wordGroups.forEach(group => {
const groupRect = group.getBoundingClientRect();
const groupNewsItems = group.querySelectorAll('.news-item');
// 添加word-group的header部分
const wordHeader = group.querySelector('.word-header');
if (wordHeader) {
const headerRect = wordHeader.getBoundingClientRect();
elements.push({
type: 'word-header',
element: wordHeader,
parent: group,
top: groupRect.top - containerRect.top,
bottom: headerRect.bottom - containerRect.top,
height: headerRect.height
});
}
// 添加每个news-item
groupNewsItems.forEach(item => {
const rect = item.getBoundingClientRect();
elements.push({
type: 'news-item',
element: item,
parent: group,
top: rect.top - containerRect.top,
bottom: rect.bottom - containerRect.top,
height: rect.height
});
});
});
// 添加新增新闻部分
if (newSection) {
const rect = newSection.getBoundingClientRect();
elements.push({
type: 'new-section',
element: newSection,
top: rect.top - containerRect.top,
bottom: rect.bottom - containerRect.top,
height: rect.height
});
}
// 添加footer
const footerRect = footer.getBoundingClientRect();
elements.push({
type: 'footer',
element: footer,
top: footerRect.top - containerRect.top,
bottom: footerRect.bottom - containerRect.top,
height: footer.offsetHeight
});
// 计算分割点
const segments = [];
let currentSegment = { start: 0, end: 0, height: 0, includeHeader: true };
let headerHeight = header.offsetHeight;
currentSegment.height = headerHeight;
for (let i = 1; i < elements.length; i++) {
const element = elements[i];
const potentialHeight = element.bottom - currentSegment.start;
// 检查是否需要创建新分段
if (potentialHeight > maxHeight && currentSegment.height > headerHeight) {
// 在前一个元素结束处分割
currentSegment.end = elements[i - 1].bottom;
segments.push(currentSegment);
// 开始新分段
currentSegment = {
start: currentSegment.end,
end: 0,
height: element.bottom - currentSegment.end,
includeHeader: false
};
} else {
currentSegment.height = potentialHeight;
currentSegment.end = element.bottom;
}
}
// 添加最后一个分段
if (currentSegment.height > 0) {
currentSegment.end = container.offsetHeight;
segments.push(currentSegment);
}
button.textContent = `生成中 (0/${segments.length})...`;
// 隐藏保存按钮
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'hidden';
// 为每个分段生成图片
const images = [];
for (let i = 0; i < segments.length; i++) {
const segment = segments[i];
button.textContent = `生成中 (${i + 1}/${segments.length})...`;
// 创建临时容器用于截图
const tempContainer = document.createElement('div');
tempContainer.style.cssText = `
position: absolute;
left: -9999px;
top: 0;
width: ${container.offsetWidth}px;
background: white;
`;
tempContainer.className = 'container';
// 克隆容器内容
const clonedContainer = container.cloneNode(true);
// 移除克隆内容中的保存按钮
const clonedButtons = clonedContainer.querySelector('.save-buttons');
if (clonedButtons) {
clonedButtons.style.display = 'none';
}
tempContainer.appendChild(clonedContainer);
document.body.appendChild(tempContainer);
// 等待DOM更新
await new Promise(resolve => setTimeout(resolve, 100));
// 使用html2canvas截取特定区域
const canvas = await html2canvas(clonedContainer, {
backgroundColor: '#ffffff',
scale: scale,
useCORS: true,
allowTaint: false,
imageTimeout: 10000,
logging: false,
width: container.offsetWidth,
height: segment.end - segment.start,
x: 0,
y: segment.start,
windowWidth: window.innerWidth,
windowHeight: window.innerHeight
});
images.push(canvas.toDataURL('image/png', 1.0));
// 清理临时容器
document.body.removeChild(tempContainer);
}
// 恢复按钮显示
buttons.style.visibility = 'visible';
// 下载所有图片
const now = new Date();
const baseFilename = `TrendRadar_热点新闻分析_${now.getFullYear()}${String(now.getMonth() + 1).padStart(2, '0')}${String(now.getDate()).padStart(2, '0')}_${String(now.getHours()).padStart(2, '0')}${String(now.getMinutes()).padStart(2, '0')}`;
for (let i = 0; i < images.length; i++) {
const link = document.createElement('a');
link.download = `${baseFilename}_part${i + 1}.png`;
link.href = images[i];
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
// 延迟一下避免浏览器阻止多个下载
await new Promise(resolve => setTimeout(resolve, 100));
}
button.textContent = `已保存 ${segments.length} 张图片!`;
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
} catch (error) {
console.error('分段保存失败:', error);
const buttons = document.querySelector('.save-buttons');
buttons.style.visibility = 'visible';
button.textContent = '保存失败';
setTimeout(() => {
button.textContent = originalText;
button.disabled = false;
}, 2000);
}
}
document.addEventListener('DOMContentLoaded', function() {
window.scrollTo(0, 0);
});
</script>
</body>
</html>