Twitch bot detector

Запрашивает у api twitch.tv количество зрителей и юзеров в чате, сравнивает показатели и выводит над чатом

  1. // ==UserScript==
  2. // @name Twitch bot detector
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.7
  5. // @description Запрашивает у api twitch.tv количество зрителей и юзеров в чате, сравнивает показатели и выводит над чатом
  6. // @author Андрей Д
  7. // @match https://www.twitch.tv/*
  8. // @grant none
  9. // @run-at document-idle
  10. // ==/UserScript==
  11.  
  12. var viewers = 0;
  13. var chatters = 0;
  14.  
  15. var xhr = new XMLHttpRequest();
  16.  
  17. function connect(channel_name){
  18. var theUrl = 'https://api.twitch.tv/kraken/streams/'+channel_name+'?client_id=4umt9oxqvmgc7zrx4fl9kqt7tp62xok';
  19. $.ajax({
  20. url: theUrl,
  21. dataType: "jsonp",
  22. success: function( response ) {
  23. var viewerlist = response.stream.viewers;
  24. viewers = viewerlist;
  25. if(viewerlist !== ""){
  26. console.log('#######################################'+'\nЗрителей '+viewers);
  27. }else{
  28. console.log("Не могу получить чаттеров");
  29. }
  30. }
  31. });
  32. }
  33.  
  34. function chat (name){
  35. var theUrl = 'https://tmi.twitch.tv/group/user/'+name+'/chatters';
  36. $.ajax({
  37. url: theUrl,
  38. dataType: "jsonp",
  39. success: function( response ) {
  40. var viewerlist = response.data.chatter_count;
  41. chatters = viewerlist;
  42. if(viewerlist !== ""){
  43. console.log('#######################################'+'\nВ чате '+chatters);
  44. }else{
  45. console.log('#######################################'+'\nНе могу получить чаттеров');
  46. }
  47. }
  48. });
  49. }
  50.  
  51. function alg (view, chat) {
  52.  
  53. return chat / view * 100;
  54. }
  55.  
  56. function push(text){
  57. //document.getElementsByClassName('room-title').innerHTML += text;
  58. document.getElementsByClassName('room-title')[0].innerHTML += text;
  59. }
  60.  
  61. //docReady(function() {
  62. $(window).load(function(){
  63. console.log('#######################################'+'\nВыделяем имя стримера..');
  64. var twitchname;
  65. //var name1 = document.getElementsByClassName("links_group");
  66. var name1 = window.location.href;
  67. twitchname = name1.substr(22);
  68. /////
  69. console.log('#######################################'+'\nЗагрузка..');
  70. setTimeout(function(){
  71. connect(twitchname);
  72. chat(twitchname);
  73. setTimeout(function(){
  74. //alert('\nЗрителей '+viewers+ '\nВ чате '+chatters+ '\nДоля '+alg(viewers,chatters).toFixed(1));
  75. push(' ## Доля '+alg(viewers,chatters).toFixed(1) + ' ##');
  76. console.log('#######################################'+'\nДоля '+alg(viewers,chatters).toFixed(1));
  77. }, 5000);
  78. }, 5000);
  79. })();
  80.  
  81.  

QingJ © 2025

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