Steam游戏评分集

在Steam游戏详情页显示更多网站评分

目前为 2016-10-18 提交的版本。查看 最新版本

  1. // ==UserScript==
  2. // @name MoreSteamRatings
  3. // @name:zh-CN Steam游戏评分集
  4. // @name:zh-TW Steam遊戲評分集
  5. // @namespace hoothin
  6. // @version 0.1
  7. // @description Show more game ratings on steam store
  8. // @description:zh-CN 在Steam游戏详情页显示更多网站评分
  9. // @description:zh-TW 在Steam遊戲詳情頁顯示更多網站評分
  10. // @author hoothin
  11. // @include http*://store.steampowered.com/app/*
  12. // @grant GM_xmlhttpRequest
  13. // @connect www.metacritic.com
  14. // @connect www.gamerankings.com
  15. // @connect www.gamespot.com
  16. // ==/UserScript==
  17.  
  18. var appName=document.querySelector("div.apphub_AppName");
  19. if(!appName)return;
  20. var gameName=getRightName(appName.innerHTML);
  21. var userReviews=document.querySelector("div.user_reviews");
  22. getMcScore();
  23. getGsScore();
  24. getGrScore();
  25.  
  26. function getRightName(s){
  27. return s.replace(/:\s|:|\s/g,"-").toLowerCase();
  28. }
  29.  
  30. function getMcScore(){
  31. getResult("http://www.metacritic.com/game/pc/"+gameName, function(d){
  32. let score=d.querySelector("span[itemprop=ratingValue]");
  33. if(score){
  34. let title=document.createElement("div");
  35. title.onclick=function(){window.open("http://www.metacritic.com/game/pc/"+gameName);};
  36. title.style="color:#8f98a0;cursor: pointer;";
  37. title.innerHTML="<div>Metacritic:</div>";
  38. userReviews.parentNode.insertBefore(title,userReviews.nextSibling);
  39. let scoreSpan=document.createElement("span");
  40. scoreSpan.style="color:#A34C25;font-size:14px";
  41. scoreSpan.innerHTML=score.innerHTML;
  42. title.appendChild(scoreSpan);
  43. }
  44. });
  45. }
  46.  
  47. function getGsScore(){
  48. getResult("http://www.gamespot.com/"+gameName, function(d){
  49. let score=d.querySelector("span[itemprop=ratingValue]");
  50. if(score){
  51. let title=document.createElement("div");
  52. title.onclick=function(){window.open("http://www.gamespot.com/"+gameName);};
  53. title.style="color:#8f98a0;cursor: pointer;";
  54. title.innerHTML="<div>Gamespot:</div>";
  55. userReviews.parentNode.insertBefore(title,userReviews.nextSibling);
  56. let scoreSpan=document.createElement("span");
  57. scoreSpan.style="color:#A34C25;font-size:14px";
  58. scoreSpan.innerHTML=score.innerHTML;
  59. title.appendChild(scoreSpan);
  60. }
  61. });
  62. }
  63.  
  64. function getGrScore(){
  65. getResult("http://www.gamerankings.com/browse.html?search="+encodeURI(appName.innerHTML)+"&site=pc&numrev=3", function(d){
  66. let score=d.querySelector(".pod>.body>table>tbody>tr");
  67. if(score){
  68. let link="http://www.gamerankings.com"+score.querySelector("td>a").getAttribute("href");
  69. let title=document.createElement("div");
  70. title.onclick=function(){window.open(link);};
  71. title.style="color:#8f98a0;cursor: pointer;";
  72. title.innerHTML="<div>Gamerankings:</div>";
  73. userReviews.parentNode.insertBefore(title,userReviews.nextSibling);
  74. let scoreSpan=document.createElement("span");
  75. scoreSpan.style="color:#A34C25;font-size:14px";
  76. scoreSpan.innerHTML=score.querySelector("td>span").innerHTML;
  77. title.appendChild(scoreSpan);
  78. }
  79. });
  80. }
  81.  
  82. function getResult(url,callBack){
  83. GM_xmlhttpRequest({
  84. method: 'GET',
  85. url: url,
  86. onload: function (d) {
  87. let doc = document.implementation.createHTMLDocument('');
  88. doc.documentElement.innerHTML = d.responseText;
  89. callBack(doc);
  90. }
  91. });
  92. }

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址