我正在重新创建 Stack Exchange 提供的耀斑图像,并且重新创建的响应速度更快,因为我可以将鼠标悬停在站点图标上并显示给定 Stack Exchange 域的统计信息。我目前必须手动更新我的数据,我计划每月左右更新两次,除非有办法通过 Web 服务或类似服务直接从 Stack Exchange 加载该数据。
需要记住以下几点:
我将把它托管在 ASP.NET Web 应用程序中,这样 C# API 就可以了。
Web 服务也很完美,因为我可以从 JavaScript 调用它们。
我需要所提供的任何服务的文档链接。
下面是我当前的手动重新创建,以防您好奇或不知道 SE 风格是什么,尽管它确实需要清理并提高效率。
var siteNames = [ 'Stack Exchange',
'Puzzling',
'Stack Overflow',
'Software Engineering',
'Mathematics',
'Physical Fitness' ]
var reps = [ '6.2k', '4.3k', '954', '410', '224', '220' ];
var golds = [ '1', '0', '0', '1', '0', '0' ];
var silvers = [ '14', '7', '4', '2', '1', '0' ];
var bronzes = [ '98', '50', '20', '10', '8', '10' ];
function getSiteStats(siteID) {
document.getElementById("site-name").innerText = siteNames[siteID];
document.getElementById("rep").innerText = reps[siteID];
document.getElementById("gold").innerText = golds[siteID];
document.getElementById("silver").innerText = silvers[siteID];
document.getElementById("bronze").innerText = bronzes[siteID];
}
function resetSiteStats() {
getSiteStats(0);
}
html, body {
margin: 0;
height: 100%;
width: 100%;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
background-color: #6aa4ed;
background-image: linear-gradient(45deg, #6aa4ed, #141d33);
background-image: -webkit-linear-gradient(45deg, #6aa4ed, #141d33);
}
h1, h5 {
color: #fff;
font-family: Arial, Helvetica, sans-serif;
font-weight: 100;
text-align: center;
margin: 0;
}
h1 {
font-size: 10vh;
}
h5 {
margin-bottom: 10px;
}
有什么方法可以让我调用 API、Web 服务或类似服务来获取给定 Stack Exchange 站点的当前统计信息吗?
另外,我不想进行任何类型的网络抓取或类似操作。我希望它来自合法的 Stack Exchange 服务。
注意:如果这属于元数据,请告诉我,以便可以迁移它。
主题:根据帮助中心,该问题被视为主题:
我们认为最好的 Stack Overflow 问题都包含一些源代码,但如果您的问题通常涵盖……
程序员常用的软件工具;并且是
软件开发特有的一个实用的、可回答的问题
...那么您就来对地方了!
鉴于上面的引述,API是程序员常用的工具,通过询问Stack Exchange是否有一个,这个问题是一个实际且可以回答的问题。然而,我确实相信这可能更适合 Meta,但我无法迁移它。
相关分类