分类 小站公告 下的文章 - 天翼小站
首页
[群]疑问解答
壁纸
搜 索
1
【电影合集】4KHDR电影合集-持续更新(23.10.22已更新)
10,962 阅读
2
【2024.4.2日更新】最新4K电影,4K剧集更新,点订阅,不迷路,每日更新!!!
8,380 阅读
3
【9月17日】4K高清~电影~电视剧~持续更新中~
5,944 阅读
4
【4K综艺】大世界之旅 第六季 The Grand Tour Season 6 (2024)2160p AMZN WEB-DL DDP5 1 HDR H 265-FLUX[HDR] [1集全] [内封简繁中字]【14.06GB】
5,160 阅读
5
【合集】日漫+ 国漫+特摄剧.23.10.10已更新
3,276 阅读
影视分享
电影
电视剧
动漫动画
蓝光原盘
综艺
演唱会
体育赛事
高帧率
HDR
纪录片
音乐阅读
图片漫画
无损音乐
软件游戏
游戏
软件
杂七杂八
小站公告
学习资源
资源互助
登录
/
注册
搜 索
标签搜索
欧美电影
国产电影
HDR
UID784MUSIC
无损音乐
原盘
歌单推荐
美剧
国产剧集
纪录片
bluray309
日漫
美漫
日本电影
SDR
抖音热歌榜
漫威电影
国漫
韩剧
日剧
子然
累计撰写
14,063
篇文章
累计收到
15,977
条评论
首页
栏目
影视分享
电影
电视剧
动漫动画
蓝光原盘
综艺
演唱会
体育赛事
高帧率
HDR
纪录片
音乐阅读
图片漫画
无损音乐
软件游戏
游戏
软件
杂七杂八
小站公告
学习资源
资源互助
页面
[群]疑问解答
壁纸
用户登录
登录
注册
找到
16
篇与
小站公告
相关的结果
2024-10-23
本站已加入Follow订阅系统
欢迎大家订阅加入使用https://app.follow.is/share/lists/71853151480300544
2024年10月23日
22
0
0
2024-04-19
这几天不好意思,遭到黑客入侵,挂了木马广告,还请各位见谅
这几天不好意思,遭到黑客入侵,挂了木马广告,还请各位见谅,现在已经将广告移除。
2024年04月19日
86
0
1
2023-09-18
如何优雅的发一篇带简介的文章?的教程
第一步 安装油猴脚本我这边使用的是 Microsoft Edge 浏览器(微软公司的,Windows系统电脑自带的)访问 https://greasyfork.org/zh-CN点击下图的链接。点进入,右上角有“安装”,点击。网速快过1分钟会安装好。第二步 添加脚本点击右上角的 篡改猴 图标再点击“添加新脚本”复制下面的代码,右边有复制图标。// ==UserScript== // @name 电影信息查询脚本 // @description Fetch Douban Description, IMDb information for PT upload // @version 3.7.9 // @author Secant(TYT@NexusHD) // @include http*://movie.douban.com/subject/* // @require https://cdn.staticfile.org/jquery/3.4.1/jquery.min.js // @icon https://movie.douban.com/favicon.ico // @contributionURL https://i.loli.net/2020/02/28/JPGgHc3UMwXedhv.jpg // @contributionAmount 10 // @namespace https://greasyfork.org/users/152136 // @grant GM_xmlhttpRequest // @connect front-gateway.mtime.cn // @connect api.douban.com // @connect proxy.secant.workers.dev // @connect p.media-imdb.com // ==/UserScript== /*jshint esversion: 8 */ (function ($) { const a = [ "MGIyYmRlZGE0M2I1Njg4OTI=", "MGRhZDU1MWVjMGY4NGVkMDI=", "OTA3ZmY1YzQyZThlYzcw", "MDI2NDZkM2ZiNjlhNTJmZjA=", "MTgzOWM4ZWNiMjAzOTli", "NzJkNDdiZjIzY2VmOGZk", "OWVjYmI1MzQ0MjUyYTRh", "MGRmOTkzYzY2YzBjNjM2ZTI=", ]; (function (b, e) { const f = function (g) { while (--g) { b["push"](b["shift"]()); } }; f(++e); })(a, 0x1e4); const b = function (c, d) { c = c - 0x0; let e = a[c]; if (b["pbhcos"] === undefined) { (function () { const g = typeof window !== "undefined" ? window : typeof process === "object" && typeof require === "function" && typeof global === "object" ? global : this; const h = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; g["atob"] || (g["atob"] = function (i) { const j = String(i)["replace"](/=+$/, ""); let k = ""; for ( let l = 0x0, m, n, o = 0x0; (n = j["charAt"](o++)); ~n && ((m = l % 0x4 ? m * 0x40 + n : n), l++ % 0x4) ? (k += String["fromCharCode"]( 0xff & (m >> ((-0x2 * l) & 0x6)) )) : 0x0 ) { n = h["indexOf"](n); } return k; }); })(); b["ICpnUS"] = function (g) { const h = atob(g); let j = []; for (let k = 0x0, l = h["length"]; k < l; k++) { j += "%" + ("00" + h["charCodeAt"](k)["toString"](0x10))["slice"](-0x2); } return decodeURIComponent(j); }; b["Snsmje"] = ; b["pbhcos"] = !![]; } const f = b["Snsmje"][c]; if (f === undefined) { e = b["ICpnUS"](e); b["Snsmje"][c] = e; } else { e = f; } return e; }; const DoubanAPIKeys = [ b("0x7") + b("0x1"), b("0x5") + b("0x6"), b("0x4") + b("0x0"), b("0x3") + b("0x2"), ]; const TIMEOUT = 6000; const $toggle = $('<span class="pl">描述文本:</span>'); const $infoGen = $('<a href="javascript:void(0)">获取</a>'); const $message = $('<span style="display:none;padding:0px 5px"></span>'); const $copyPaste = $('<textarea type="text" rows="0" cols="0"/>').css({ position: "absolute", top: 0, left: -9999, }); function decodeEntities(encodedString) { var textArea = document.createElement("textarea"); textArea.innerHTML = encodedString; return textArea.value; } function addComma(x) { var parts = x.toString().split("."); parts[0] = parts[0].replace(/\B(?=(\d)+(?!\d))/g, ","); return parts.join("."); } function jsCopy(e) { e.select(); try { return document.execCommand("copy"); } catch (err) { return false; } } function $$(htmlString) { return $(htmlString, document.implementation.createHTMLDocument("virtual")); } $.fn.extend({ nextNodeUtil: function (selector) { const siblings = []; try { let current = this[0]; do { siblings.push(current); current = current.nextSibling; } while ( current.nodeType === Node.TEXT_NODE || !current.matches(selector) ); return $(siblings); } catch (e) { return $(siblings); } }, }); function getPoster() { try { return $("#mainpic img")[0].src.replace( /^.+(p\d+).+$/, (_, p1) => `https://img9.doubanio.com/view/photo/l_ratio_poster/public/$.jpg` ); } catch (e) { return null; } } function getTitles() { let isChinese = false; const chineseTitle = document.title.replace(/\(豆瓣\)$/, "").trim(); const originalTitle = $("#content h1>span[property]").text().replace(chineseTitle, "").trim() || ((isChinese = true), chineseTitle); try { let akaTitles = $('#info span.pl:contains("又名")')[0] .nextSibling.textContent.trim() .split(" / "); const transTitle = isChinese ? akaTitles.find((e) => { return e.match(/[a-z]/i); }) || chineseTitle : chineseTitle; const priority = (e) => { if (e === transTitle) { return 0; } if (e.match(/\(港.?台\)/)) { return 1; } if (e.match(/\([港台]\)/)) { return 2; } return 3; }; akaTitles = akaTitles .sort((a, b) => priority(a) - priority(b)) .filter((e) => e !== transTitle); return [ { chineseTitle: chineseTitle, originalTitle: originalTitle, translatedTitle: transTitle, alsoKnownAsTitles: akaTitles, }, isChinese, ]; } catch (e) { return [ { chineseTitle: chineseTitle, originalTitle: originalTitle, translatedTitle: chineseTitle, alsoKnownAsTitles: [], }, isChinese, ]; } } function getYear() { return parseInt($("#content>h1>span.year").text().slice(1, -1)); } function getRegions() { try { return $('#info span.pl:contains("制片国家/地区")')[0] .nextSibling.textContent.trim() .split(" / "); } catch (e) { return []; } } function getGenres() { try { return $('#info span[property="v:genre"]') .toArray() .map((e) => e.innerText.trim()); } catch (e) { return []; } } function getLanguages() { try { return $('#info span.pl:contains("语言")')[0] .nextSibling.textContent.trim() .split(" / "); } catch (e) { return []; } } function getReleaseDates() { try { return $('#info span[property="v:initialReleaseDate"]') .toArray() .map((e) => e.innerText.trim()) .sort((a, b) => new Date(a) - new Date(b)); } catch (e) { return []; } } function getDurations() { try { return $('span[property="v:runtime"]') .nextNodeUtil("br") .toArray() .map((e) => e.textContent) .join("") .trim() .split(" / "); } catch (e) { return []; } } function getEpisodeDuration() { try { return $( '#info span.pl:contains("单集片长")' )[0].nextSibling.textContent.trim(); } catch (e) { return null; } } function getEpisodeCount() { try { return parseInt( $('#info span.pl:contains("集数")')[0].nextSibling.textContent.trim() ); } catch (e) { return null; } } function getTags() { return $("div.tags-body>a") .toArray() .map((e) => e.textContent); } function getDoubanID() { return window.location.href.match(/subject\/(\d+)/)[1]; } function getDoubanScore() { const $interest = $("#interest_sectl"); const ratingAverage = parseFloat( $interest.find('[property="v:average"]').text() ); const ratingVotes = parseInt($interest.find('[property="v:votes"]').text()); const ratingHist = Object.fromEntries( $interest .find(".ratings-on-weight .rating_per") .toArray() .map((e, i) => [5 - i, parseFloat(e.textContent.slice(0, -1)) / 100]) ); return { rating: ratingAverage, ratingCount: ratingVotes, ratingHistograms: { "Douban Users": { aggregateRating: ratingAverage, demographic: "Douban Users", histogram: ratingHist, totalRatings: ratingVotes, }, }, }; } function getDescription() { try { return Array.from( $('[id^="link-report"]>[property="v:summary"],[id^="link-report"]>span.all.hidden')[0] .childNodes ) .filter((e) => e.nodeType === 3) .map((e) => e.textContent.trim()) .join("\n"); } catch (e) { return null; } } async function DoubanAPI( ID, apikeys = DoubanAPIKeys.slice(), timeout = TIMEOUT ) { if (ID) { const index = Math.floor(Math.random() * apikeys.length); const [apikey] = apikeys.splice(index, 1); return new Promise((resolve) => { GM_xmlhttpRequest({ method: "GET", url: `https://api.douban.com/v2/movie/$?apikey=$`, headers: { referrer: "http://api.douban.com/", }, responseType: "json", timout: timeout, onload: (x) => { const e = x.response; if (e.code === 104 && apikeys.length > 0) { console.warn(e); resolve(DoubanAPI(ID, apikeys)); } else if (e.code) { console.warn(e); resolve(null); } else { resolve(e); } }, ontimeout: (e) => { console.warn(e); resolve(null); }, onerror: (e) => { console.warn(e); resolve(null); }, }); }); } else { return null; } } async function getIMDbID(timeout = TIMEOUT) { const $season = $("#season"); try { if ($season[0] && $season.find(":selected")[0].innerText !== "1") { const DoubanID = $season.find("option:first-of-type").val(); const resp = await Promise.race([ fetch(`https://movie.douban.com/subject/$`), new Promise((resolve) => setTimeout(() => { resolve({ ok: false, message: `fetch $ douban page time out`, }); }, timeout) ), ]); if (resp.ok) { const htmlString = await resp.text(); return $$(htmlString) .find('#info .pl:contains("IMDb:")')[0] .nextSibling.textContent.match(/tt(\d+)/)[1]; } else { console.warn(resp); return null; } } else { return $( '#info .pl:contains("IMDb:")' )[0].nextSibling.textContent.match(/tt(\d+)/)[1]; } } catch (e) { return null; } } async function getIMDbScore(ID, timeout = TIMEOUT) { if (ID) { return new Promise((resolve) => { GM_xmlhttpRequest({ method: "GET", // p.media-imdb.com: HTTPS -> HTTP url: `http://p.media-imdb.com/static-content/documents/v1/title/tt$/ratings%3Fjsonp=imdb.rating.run:imdb.api.title.ratings/data.json`, // url: `https://proxy.secant.workers.dev/worker/proxy/p.media-imdb.com/static-content/documents/v1/title/tt$/ratings%253Fjsonp=imdb.rating.run:imdb.api.title.ratings/data.json`, timout: timeout, onload: (x) => { try { const e = JSON.parse(x.responseText.slice(16, -1)); resolve(e.resource); } catch (e) { console.warn(e); resolve(null); } }, ontimeout: (e) => { console.warn(e); resolve(null); }, onerror: (e) => { console.warn(e); resolve(null); }, }); }); } else { return null; } } async function getAwards(ID, timeout = TIMEOUT) { if (ID) { const resp = await Promise.race([ fetch(`https://movie.douban.com/subject/$/awards`), new Promise((resolve) => setTimeout(() => { resolve({ ok: false, message: `fetch $ douban awards time out`, }); }, timeout) ), ]); if (resp.ok) { const htmlString = await resp.text(); return $$(htmlString) .find("div.awards") .toArray() .map((e) => { const $title = $(e).find(".hd>h2"); const $awards = $(e).find(".award"); return { name: $title.find("a").text().trim(), year: parseInt($title.find(".year").text().match(/\d+/)[0]), awards: $awards.toArray().map((e) => ({ name: $(e).find("li:first-of-type").text().trim(), people: $(e) .find("li:nth-of-type(2)") .text() .split("/") .map((e) => e.trim()), })), }; }); } else { return []; } } else { return []; } } async function getCelebrities(ID, timeout = TIMEOUT) { if (ID) { const fetchCeleb = await Promise.race([ fetch(`https://movie.douban.com/subject/$/celebrities`), new Promise((resolve) => setTimeout(() => { resolve({ ok: false, message: `fetch $ douban celebrities time out`, }); }, timeout) ), ]); const fetchAPI = DoubanAPI(ID); const respCeleb = await fetchCeleb; let jsonCeleb, jsonAPI; if (respCeleb.ok) { const htmlString = await respCeleb.text(); const entries = $$(htmlString) .find("#celebrities>div.list-wrapper") .toArray() .map((e) => { const [positionChinese, positionForeign] = $(e) .find("h2") .text() .match(/([^ ]*)(?:$| )(.*)/) .slice(1, 3); const people = $(e) .find("li.celebrity") .toArray() .map((e) => { let [nameChinese, nameForeign] = $(e) .find(".info>.name") .text() .match(/([^ ]*)(?:$| )(.*)/) .slice(1, 3); if (!nameChinese.match(/[\u4E00-\u9FCC]/)) { nameForeign = nameChinese + " " + nameForeign; nameChinese = null; } const [roleChinese, roleForeign, character] = $(e) .find(".info>.role") .text() .match(/([^ ]*)(?:$| )([^(]*)(?:$| )(.*)/) .slice(1, 4); return { name: { chs: nameChinese, for: nameForeign, }, role: { chs: roleChinese, for: roleForeign, }, character: character.replace(/[()]/g, ""), }; }); return [ positionForeign.toLowerCase(), { position: positionChinese, people: people, }, ]; }); if (entries.length) { jsonCeleb = Object.fromEntries(entries); } else { jsonCeleb = null; } } else { jsonCeleb = null; } const respAPI = await fetchAPI; if (respAPI) { const splitName = (e, chsRole, forRole) => { let [nameChinese, nameForeign] = e .match(/([^ ]*)(?:$| )(.*)/) .slice(1, 3); if (!nameChinese.match(/[\u4E00-\u9FCC]/)) { nameForeign = nameChinese + " " + nameForeign; nameChinese = null; } return { name: { chs: nameChinese, for: nameForeign, }, role: { chs: chsRole, for: forRole, }, character: "", }; }; jsonAPI = { director: { position: "导演", people: (respAPI.attrs.director || []).map((e) => splitName(e, "导演", "Director") ), }, cast: { position: "演员", people: (respAPI.attrs.cast || []).map((e) => splitName(e, "演员", "Actor/Actress") ), }, writer: { position: "编剧", people: (respAPI.attrs.writer || []).map((e) => splitName(e, "编剧", "Writer") ), }, }; } else { jsonAPI = null; } if (jsonCeleb === null) { return jsonAPI; } else if (jsonAPI === null) { return jsonCeleb; } else { ["director", "cast", "writer"].forEach((prop) => { if (jsonCeleb[prop]) { jsonAPI[prop].people.forEach((e) => { const flag = jsonCeleb[prop].people.filter((f) => { return f.name.for === e.name.for; }); if (flag.length === 0) { jsonCeleb[prop].people.push(e); } }); } else { jsonCeleb[prop] = jsonAPI[prop]; } }); return jsonCeleb; } } else { return null; } } // Mtime is HTTP only async function MtimeSearch( chineseTitle, year, timeout = TIMEOUT + 2000 //mtime search is slow? ) { return new Promise((resolve) => { GM_xmlhttpRequest({ method: "GET", url: `https://front-gateway.mtime.cn/mtime-search/search/unionSearch?keyword=${encodeURIComponent( chineseTitle )}`, headers: { "content-type": "application/x-www-form-urlencoded; charset=UTF-8", }, responseType: "json", timeout: timeout, onload: (x) => { const e = x.response; try { resolve( e.data.movies.find((movie) => { const titles = movie.titleOthersCn; titles.unshift(movie.name, movie.nameEn); if (year !== movie.year && year !== movie.rYear) { return false; } if (titles.some((title) => chineseTitle.includes(title))) { return true; } return false; }) || null ); } catch (e) { console.warn(e); resolve(null); } }, ontimeout: (e) => { console.warn(e); resolve(null); }, onerror: (e) => { console.warn(e); resolve(null); }, }); }); } // ERROR 521 is handled. (generate cookies on the spot) async function getBehindTheScene(ID, timeout = TIMEOUT) { if (ID) { return new Promise((resolve) => { GM_xmlhttpRequest({ method: "GET", url: `https://front-gateway.mtime.cn/library/movie/extendDetail.api?movieId=$`, headers: { "content-type": "application/x-www-form-urlencoded; charset=UTF-8", }, responseType: "json", timeout: timeout, onload: (x) => { try { resolve(x.response.data.dataBankEntry); } catch (e) { console.warn(e); resolve(null); } }, ontimeout: (e) => { console.warn(e); resolve(null); }, onerror: (e) => { console.warn(e); resolve(null); }, }); }); } else { return null; } } async function getInfo() { const [titles, isChinese] = getTitles(), year = getYear(), regions = getRegions(), genres = getGenres(), languages = getLanguages(), releaseDates = getReleaseDates(), durations = getDurations(), episodeDuration = getEpisodeDuration(), episodeCount = getEpisodeCount(), tags = getTags(), DoubanID = getDoubanID(), DoubanScore = getDoubanScore(), poster = getPoster(), description = getDescription(); let IMDbID, IMDbScore, awards, celebrities, behindTheScene; const concurrentFetches = []; concurrentFetches.push( // IMDb Fetch getIMDbID() .then((e) => { IMDbID = e; return getIMDbScore(IMDbID); }) .then((e) => { IMDbScore = e; }), // Awards Fetch getAwards(DoubanID).then((e) => { awards = e; }), // Celebrities Fetch getCelebrities(DoubanID).then((e) => { celebrities = e; }), // MTime // 更换时光网接口 MtimeSearch(titles.chineseTitle, year) .then((e) => (e ? getBehindTheScene(e.movieId) : null)) .then((e) => { behindTheScene = e; }) ); await Promise.all(concurrentFetches); // Amend Titles if (IMDbScore && IMDbScore.title) { if (isChinese) { if (!titles.translatedTitle.includes(IMDbScore.title)) { titles.alsoKnownAsTitles.push(titles.translatedTitle); const index = titles.alsoKnownAsTitles.indexOf(IMDbScore.title); if (index >= 0) { titles.alsoKnownAsTitles.splice(index, 1); } titles.translatedTitle = IMDbScore.title; } } else { if ( !titles.originalTitle.includes(IMDbScore.title) && titles.alsoKnownAsTitles.indexOf(IMDbScore.title) === -1 ) { titles.alsoKnownAsTitles.push(IMDbScore.title); } } } return { poster: poster, titles: titles, year: year, regions: regions, genres: genres, languages: languages, releaseDates: releaseDates, durations: durations, episodeDuration: episodeDuration, episodeCount: episodeCount, tags: tags, DoubanID: DoubanID, DoubanScore: DoubanScore, IMDbID: IMDbID, IMDbScore: IMDbScore, awards: awards, celebrities: celebrities, description: description, behindTheScene: behindTheScene, }; } function formatInfo(info) { let temp; const infoText = ( (info.poster ? `[img]$[/img]\n\n` : "") + "◎译 名 " + [info.titles.translatedTitle] .concat(info.titles.alsoKnownAsTitles) .join(" / ") + "\n" + "◎片 名 " + info.titles.originalTitle + "\n" + "◎年 代 " + info.year + "\n" + (info.regions.length ? "◎产 地 " + info.regions.join(" / ") + "\n" : "") + (info.genres.length ? "◎类 别 " + info.genres.join(" / ") + "\n" : "") + (info.languages.length ? "◎语 言 " + info.languages.join(" / ") + "\n" : "") + (info.releaseDates.length ? "◎上映日期 " + info.releaseDates.join(" / ") + "\n" : "") + (info.IMDbScore && info.IMDbScore.rating ? `◎IMDb评星 ${ ((temp = Math.round(info.IMDbScore.rating * 2)), "★".repeat(Math.floor(temp / 2)) + (temp % 2 === 1 ? "✦" : "") + "☆".repeat(10 - Math.ceil(temp / 2))) }\n◎IMDb评分 ${Number(info.IMDbScore.rating).toFixed( 1 )}/10 from $ users\n` : "") + (info.IMDbID ? `◎IMDb链接 https://www.imdb.com/title/tt$/\n` : "") + (info.DoubanScore && info.DoubanScore.rating ? `◎豆瓣评星 ${ ((temp = Math.round(info.DoubanScore.rating)), "★".repeat(Math.floor(temp / 2)) + (temp % 2 === 1 ? "✦" : "") + "☆".repeat(5 - Math.ceil(temp / 2))) }\n◎豆瓣评分 ${Number(info.DoubanScore.rating).toFixed( 1 )}/10 from $ users\n` : "") + (info.DoubanID ? `◎豆瓣链接 https://movie.douban.com/subject/$/\n` : "") + (info.durations && info.durations.length ? "◎片 长 " + info.durations.join(" / ") + "\n" : "") + (info.episodeDuration ? "◎单集片长 " + info.episodeDuration + "\n" : "") + (info.episodeCount ? "◎集 数 " + info.episodeCount + "\n" : "") + (info.celebrities ? Object.entries(info.celebrities) .map((e) => { const position = e[1].position; let title = "◎"; switch (position.length) { case 1: title += " " + position + " "; break; case 2: title += position.split("").join(" ") + " "; break; case 3: title += position.split("").join(" ") + " "; break; case 4: title += position + " "; break; default: title += position + "\n "; } const people = e[1].people .map((f, i) => { const name = f.name.chs ? f.name.for ? f.name.chs + " / " + f.name.for : f.name.chs : f.name.for; return ( (i > 0 ? " " : "") + name + (f.character ? ` | $` : "") ); }) .join("\n"); return title + people; }) .join("\n") + "\n\n" : "") + (info.tags.length ? "◎标 签 " + info.tags.join(" | ") + "\n\n" : "") + (info.description ? "◎简 介 \n" + info.description.replace(/^|\n/g, "\n ") + "\n\n" : "") + (info.awards.length ? "◎获奖情况 \n\n" + info.awards .map((e) => { const awardName = " " + e.name + " (" + e.year + ")\n"; const awardItems = e.awards .map((e) => " " + e.name + (e.people ? " " + e.people : "")) .join("\n"); return awardName + awardItems; }) .join("\n\n") + "\n\n" : "") + (info.behindTheScene ? (info.behindTheScene.classicLineList && info.behindTheScene.classicLineList.length > 0 ? "◎台词金句\n\n " + info.behindTheScene.classicLineList .map((e) => e.replace(/\r?\n/g, "\n ")) .join("\n ") + "\n\n" : "") + (info.behindTheScene.behindTextList && info.behindTheScene.behindTextList.length > 0 ? "◎幕后揭秘\n\n " + info.behindTheScene.behindTextList .map((e) => decodeEntities(e) .replace(/<.+?>/g, "") .replace(/ /g, "\n\n ") .trim() ) .join("\n\n ") + "\n\n" : "") : "") ).trim(); return infoText; } $("body").append($copyPaste); $("#info").append($toggle).append(" ").append($infoGen).append($message); $infoGen.state = 0; const infoGenClickEvent = async (e) => { switch ($infoGen.state) { case 0: //获取 $infoGen.off("click"); $infoGen.text("获取中..."); $copyPaste.val(formatInfo(await getInfo())); $infoGen.state = 1; $infoGen.text("复制"); $infoGen.on("click", infoGenClickEvent); break; case 1: //复制 { const copyResult = jsCopy($copyPaste[0]); if (copyResult) { $message .css() .text("复制成功") .fadeIn(200, () => $message.fadeOut(200)); } else { $message .css() .text("复制失败") .fadeIn(200, () => $message.fadeOut(200)); } } break; } }; $infoGen.on("click", infoGenClickEvent); })(window.$.noConflict(true)); CTRL+A 全选 CTRL+V 粘贴 CTRL+S 保存下一步点击这里找到这个 编辑 图标点击找到这个把 检查更新 取消勾了,点保存, 像我上图那样。这样你就可以使用脚本了。第三步 获取 影片简介信息随便找一个影片。点一下获取,再点一下复制复制成功有显示0.2s第四步,发帖回本站发帖 https://jinglei.eu.org/admin/write-post.php把上面的图片地址剪贴,像下面这样,顺便把那行删掉。图片插入链接在第一行倒数第4个。链接扔进去第2个,第1个不用填。确定,把其他的因素写好了,比如标题写了。就是下面这样了。第五步 去雷鲸小站使用外链功能(手机端不支持)请看上面 “第四步” 的拿图片链接,复制 https://img9....省略。点击 https://www.leijing.xyz/ ,到最下面,找到这个 图片 图标,点击默认是选中了地址,直接粘贴点确定就加载出来了。接下来,就可以写您的内容了,祝你写作愉快,再见。以上教程,仅供用于学习参考。
2023年09月18日
326
0
1
2023-08-26
《致游客的一封信》《疑问解答》
Q:为什么你们换域名了?原来是https://yun.hei521.cn/,现在是https://jinglei.eu.org/A:因为原来的网站长发生了一点事情,当然人家现在是隐退了。由大佬继承了原来网站的数据做下去,服务器和域名都发生了变化,更加稳定。Q:网站是https://jinglei.eu.org/ ,不是.com .cn一点也不专业。A:eu 为欧盟组织, org为组织的意思。jinglei 为 惊雷的意思,这个2级域名是欧盟组织那边给的。同样的,这个也是一个顶级域名,同.com .cn 一个等级,.org多用于 非盈利性组织与机构注册,例如:联合国组织:https://www.un.org/zh/,国际原子能机构:https://www.iaea.org/zh ;现在适用范围:包括盈利组织,个人,非营利组织等。Q:天翼小站开了多少年?A:2020年3月开始,到现在。域名和服务器时间不准是因为上面的原因。Q:天翼云盘资源还是挺少。A:到我这里算,第二代天翼生态发展。我接手了第一代的资源,当然第一代的其他天翼网站长倒了,我从2020年6月开始,发展天翼小站3年,期间搬运以及发帖5000多个文章,一次管理层发展分歧,就我把5000多的文章删了。这些已经过去了,其他的分享者比我更加优秀。在之后的数据调研中,天翼实际上偷偷上传资源的人比较多,只是不分享,所以说“分享资源比较少”。但是我们的分享者每天以100个左右的数量持续日更。Q:为什么又有一个叫雷鲸小站https://www.leijing.xyz/?A:以后考虑到了比较大的发展,准备了一个企业级的论坛,没有听错,企业级的,花销有点大。由Java语言开发的,世界上90%大型网站都是Java语言开发的,像银行、商业、政府这种都是Java语言。雷鲸小站(主)域名:https://www.leijing.xyz/ (主域名)https://leijing.xyz/https://www.leijing1.com/https://leijing1.com/天翼小站(备用网站)域名:https://jinglei.eu.org/ (主域名&&备用域名)https://leijing2.com/https://www.leijing2.com/https://ty.leijings.com/(弃用) 友情链接:海绵小站:kkapik.com资源汇 ——阿里*移动迅雷等 综合性资源集合网站 www.ziyuanhui.cc (香港线路)ziyuanhui.cc (国际线路)新站:www.pixpiy.com雷鲸导航:https://www.leijings.com/
2023年08月26日
2,411
0
48
2023-07-01
【抽奖活动】天翼云盘有机会获得:腾讯视频会员、京东E卡、芒果视频会员、7天黄金会员等等各种福利
window.location.href = "https://m.cloud.189.cn/zhuanti/2021/shakeLottery/index.html?uxChannel=10021152000&albumBackupOpened=0#/"
2023年07月01日
38
0
0
2023-06-29
移动联通用户,请尽快迁移到雷鲸小站。
window.location.href = "https://www.leijing1.com/"
2023年06月29日
964
0
1
【公告】小站最新公告
2023年05月26日
95
5
2
2023-05-26
前段时间因为有些老哥分享内容重复,而且个别老哥直接转存作者辛苦转存的资源进行二次分享,因此管理员辛苦整理删除了一些重复的内容,并且要求了一定的发帖格式,删除确实可以一定上维持文章质量较高性并确保分享者利益,让用户方便索引,避免重复内容,这样有好有坏,可能对于一些老哥来说门槛有些高,所以导致不在小站进行分享,对此也是非常遗憾,初衷本来是大家都能够进行分享交流,但是圈子大了,资源也五花八门,涉及的问题也很多,不及时治理资源容易很乱,提高门槛又让一些老哥们觉得很繁琐不进行分享,对此也是挺让人头疼,但还是谢谢还有很多老哥一直在分享资源,希望大家找到自己需要的资源能够想分享的老哥留言感谢,同时希望大家能够互相分享,充实强大我们的队伍,不知不觉小站建立到现在已有三年时间了,谢谢大家的一路支持。
2023-02-06
新的发帖格式
1.标题:类型+资源名称+清晰度+字幕(国产剧可以不用)2.文章:豆瓣链接 或者 剧情简介3.发帖前请先查询小站是否有相同版本资源,请勿重复。发帖前请确认天翼链接审核是否通过。鼓励发更好的画质码率版本视频。文章最后最好放个本站的链接:https://yun.hei521.cn/欢迎天翼云盘友人踊跃发帖,感谢大家一直以来对小站的支持!!!
2023年02月06日
29
3
0
2022-07-15
天翼小站微信群
公众号:微信群:
2022年07月15日
56
1
0
2022-07-07
【精选】作者帖子
4K影视 博主:https://yun.hei521.cn/index.php/author/5105/老旧电视剧 博主:https://yun.hei521.cn/index.php/author/5477/
2022年07月07日
38
0
0
1
2