gpl2731
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Код: {"vixen":{"link":"(vixen|tushy|tushyraw|blacked|blackedraw|slayed|deeper)\\.com/videos/[^#]+(?:#(.+))?","res":":\nif ($[2]) {\n return decodeURIComponent(atob($[2]));\n}\n\nconst vid_quality = 1; // 0=best, 1=2nd-best etc\n\nconst m = /videoTokenId\":\"(\\d+)/g.exec($._);\nconst vidId = m ? m[1] : null;\nif (!vidId) return;\n\nconst url_selector = $[0].split('/').slice(3).join('/');\nconst a_elems = document.querySelectorAll(`a[href*=\"${url_selector}\"]`);\n\nasync function getTrailer(vidId, a_elems) {\n const url = `https://www.${$[1]}.com/graphql`;\n\n fetch(url, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: `{\"operationName\":\"getToken\",\"variables\":{\"videoId\":\"${vidId}\",\"device\":\"trailer\"},\"query\":\"query getToken($videoId: ID!, $device: Device!) {\\\\n generateVideoToken(input: {videoId: $videoId, device: $device}) {\\\\n p270 {\\\\n token\\\\n cdn\\\\n __typename\\\\n }\\\\n p360 {\\\\n token\\\\n cdn\\\\n __typename\\\\n }\\\\n p480 {\\\\n token\\\\n cdn\\\\n __typename\\\\n }\\\\n p480l {\\\\n token\\\\n cdn\\\\n __typename\\\\n }\\\\n p720 {\\\\n token\\\\n cdn\\\\n __typename\\\\n }\\\\n p1080 {\\\\n token\\\\n cdn\\\\n __typename\\\\n }\\\\n p2160 {\\\\n token\\\\n cdn\\\\n __typename\\\\n }\\\\n hls {\\\\n token\\\\n cdn\\\\n __typename\\\\n }\\\\n __typename\\\\n }\\\\n}\\\\n\"}`,\n })\n .then(response => response.json())\n .then(data => {\n let trailer = null;\n let trailers = data.data.generateVideoToken;\n\n if (!trailers) return;\n\n const resolutions = Object.keys(trailers).sort((key1, key2) => {\n const res1 = Number(key1.replace(/[^\\d]/g, ''));\n const res2 = Number(key2.replace(/[^\\d]/g, ''));\n return res1 > res2 ? -1 : 1;\n });\n\n trailer = trailers[resolutions[vid_quality]].token;\n if (trailer) {\n [...a_elems].forEach(a_elem => {\n a_elem.href += `#${btoa(encodeURIComponent(trailer))}`;\n if (a_elem.innerText.length > 0) {\n a_elem.innerText =\n String.fromCodePoint(parseInt('25B6', 16)) +\n ' ' +\n a_elem.innerText;\n }\n if (location.hostname.includes($[1])) {\n if (!a_elem.getAttribute('data-test-component')) {\n a_elem.parentElement.style.cssText +=\n 'border-bottom: 3px solid #ebff00; !important';\n }\n if (\n a_elem.parentElement.getAttribute('data-test-component') ==\n 'FeaturedVideoListItem'\n ) {\n a_elem.childNodes[0].style.cssText +=\n 'border-top: 3px solid #ebff00; !important';\n }\n }\n });\n }\n });\n}\n\ngetTrailer(vidId, a_elems);\nreturn;\n"}} | vixen, tushy, tushyraw, blacked, blackedraw, slayed, deeper Trailers Works on links only. 1st hover fetches the trailer. Change vid_quality. Usually 0=4k, 1=1080p etc... Examples (examples only work in firefox): https://www.blacked.com/videos/shaken https://www.vixen.com/videos/psychosexual-part-3 https://www.tushy.com/videos/psychosexual-part-2 https://www.deeper.com/videos/psychosexual-part-5
Нарушение глава VI Соглашения по использованию Нарушение п. 1.5. главы VII Соглашения по использованию
| Всего записей: 52 | Зарегистр. 26-09-2021 | Отправлено: 22:04 27-09-2021 | Исправлено: Maz, 20:11 28-09-2021 |
|