您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Add content ratings to Yify listings and replace torrent urls with magnet links.
- // ==UserScript==
- // @name Fix Yify
- // @namespace yts.to
- // @description Add content ratings to Yify listings and replace torrent urls with magnet links.
- //
- // @include http://yify-movie.com/search*
- // @include http://yify-movie.com/recent*
- // @include http://yify-movie.com/genres/*
- // @include http://yify-movie.com/years/*
- // @require http://code.jquery.com/jquery-1.11.0.min.js
- // @version 0.2.3
- // @grant GM_xmlhttpRequest
- // @grant GM_addStyle
- // ==/UserScript==
- // Bigger fonts
- GM_addStyle('\
- .imdb-high { \
- background: green; \
- color: white; \
- padding: 1px 4px 1px 4px; \
- } \
- .imdb-med { \
- background: orange; \
- color: white; \
- padding: 1px 4px 1px 4px; \
- } \
- .imdb-low { \
- background: red; \
- color: white; \
- padding: 1px 4px 1px 4px; \
- } \
- figcaption { \
- font-weight: bold; \
- } \
- figcaption { \
- background: white; \
- border-radius: 15px; \
- height: 90px !important; \
- } \
- figcaption:hover { \
- color: white; \
- background: gray; \
- } \
- ');
- function imdbRating(imdb) {
- var score = parseInt(imdb, 10);
- var rating = null;
- if (score > 6.9) {
- rating = 'imdb-high';
- } else if (score > 4.5) {
- rating = 'imdb-med';
- } else {
- rating = 'imdb-low';
- }
- return '<span class="' + rating + '">' + imdb + '</span>';
- }
- function addTorrentLink(dom, div) {
- $("dd:nth-child(17)", $(dom)).each(function(i) {
- mpr = $(this).text();
- });
- $("dd:nth-child(20)", $(dom)).each(function(i) {
- imdb = $(this).text();
- });
- $("#dm", $(dom)).each(function(i) {
- magnet = $(this).attr('href');
- });
- var title = div.find('h3').text();
- var newText = '<figcaption><a href="'+magnet+'" title="click to download">';
- newText += "<h3>" + title + '</h3>';
- newText += '<div>MPR: '+mpr+'</div>';
- newText += '<div>IMDB: '+imdbRating(imdb)+'</div>';
- newText += "</figcaption></a>";
- div.find('figcaption').replaceWith(newText);
- }
- function addPopupCast(dom, div) {
- var cast = 'ACTORS: ';
- $("span:nth-child(5) span", $(dom)).each(function(i) {
- cast += $(this).text() + ', ';
- });
- cast = cast.replace(/, $/, '');
- // console.log("CAST: "+cast);
- div.find("a").prop("title", cast);
- }
- function imposeMyWill(url, div) {
- var data = null;
- // console.log("DIV: "+ div);
- GM_xmlhttpRequest({
- method: "GET",
- url: url,
- onload: function(response) {
- // We've received a response
- data = $.parseHTML(response.responseText);
- // console.log("DATA: "+ data);
- addTorrentLink(data, div);
- addPopupCast(data, div);
- return;
- },
- onerror: function(response) {
- data = JSON.parse(response.responseText);
- console.log('ERROR: '+data);
- // $('#yts-options').html('<p>ERROR! Failed to connect to the YTS website.</p>');
- }
- });
- }
- function removeAds() {
- var ads = $('a.hidden-xs');
- if (ads.length) {
- console.log('Removing ad box.');
- ads.remove();
- }
- }
- $(document).ready(function() {
- var divs = $("article.img-item");
- var link = null;
- var url = null;
- // removeAds();
- $(divs).each(function(i) {
- link = $(this).find('h3 a');
- url = link.attr('href');
- // console.log("URL: "+url);
- imposeMyWill(url, $(this));
- });
- });