diff --git a/src/extractor/ExtractorRegistry.ts b/src/extractor/ExtractorRegistry.ts index 7d8c9cb..ed67bfb 100644 --- a/src/extractor/ExtractorRegistry.ts +++ b/src/extractor/ExtractorRegistry.ts @@ -6,7 +6,6 @@ import { Fetcher } from '../utils'; import { DoodStream } from './DoodStream'; import { Dropload } from './Dropload'; import { SuperVideo } from './SuperVideo'; -import { Mixdrop } from './Mixdrop'; export class ExtractorRegistry { private readonly logger: winston.Logger; @@ -18,7 +17,6 @@ export class ExtractorRegistry { this.extractors = [ new DoodStream(fetcher), new Dropload(fetcher), - new Mixdrop(fetcher), new SuperVideo(fetcher), ]; this.urlResultCache = new TTLCache({ max: 1024 }); diff --git a/src/extractor/Mixdrop.ts b/src/extractor/Mixdrop.ts deleted file mode 100644 index bfff90f..0000000 --- a/src/extractor/Mixdrop.ts +++ /dev/null @@ -1,43 +0,0 @@ -import { Extractor } from './types'; -import { extractUrlFromPacked, Fetcher } from '../utils'; -import { Context } from '../types'; -import bytes from 'bytes'; - -export class Mixdrop implements Extractor { - readonly id = 'mixdrop'; - - readonly label = 'Mixdrop'; - - readonly ttl = 900000; // 15m - - private readonly fetcher: Fetcher; - - constructor(fetcher: Fetcher) { - this.fetcher = fetcher; - } - - readonly supports = (url: URL): boolean => null !== url.host.match(/mixdrop/); - - readonly extract = async (ctx: Context, url: URL, countryCode: string) => { - const normalizedFullUrl = url.href.replace('/e/', '/f/'); - const fullHtml = await this.fetcher.text(ctx, new URL(normalizedFullUrl)); - - const sizeMatch = fullHtml.match(/([\d.]+ ?[GM]B)/) as string[]; - - const normalizedEmbedUrl = url.href.replace('/f/', '/e/'); - const embedHtml = await this.fetcher.text(ctx, new URL(normalizedEmbedUrl)); - - return { - url: extractUrlFromPacked(embedHtml, [/MDCore.wurl="(.*?)"/]), - label: this.label, - sourceId: `${this.id}_${countryCode.toLowerCase()}`, - height: 0, - bytes: bytes.parse(sizeMatch[1] as string) as number, - countryCode, - requestHeaders: { - 'Referer': url.origin, - 'User-Agent': this.fetcher.getUserAgentForIp(ctx.ip), - }, - }; - }; -} diff --git a/src/handler/FrenchCloud.test.ts b/src/handler/FrenchCloud.test.ts index cee903b..b1e8b8a 100644 --- a/src/handler/FrenchCloud.test.ts +++ b/src/handler/FrenchCloud.test.ts @@ -27,7 +27,7 @@ describe('FrenchCloud', () => { test('handle imdb the devil\'s bath', async () => { const streams = (await handler.handle(ctx, 'movie', 'tt29141112')).filter(stream => stream !== undefined); - expect(streams).toHaveLength(4); + expect(streams).toHaveLength(3); expect(streams[0]).toStrictEqual({ url: expect.any(URL), label: 'SuperVideo', @@ -47,19 +47,6 @@ describe('FrenchCloud', () => { }); expect(streams[1]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); expect(streams[2]).toStrictEqual({ - url: expect.any(URL), - label: 'Mixdrop', - sourceId: 'mixdrop_fr', - height: 0, - bytes: 966703185, - countryCode: 'fr', - requestHeaders: { - 'Referer': 'https://mixdrop.ag', - 'User-Agent': 'Fake UserAgent', - }, - }); - expect(streams[2]?.url.href).toMatch(/^https:\/\/.*?s=.*?e=.*?t=/); - expect(streams[3]).toStrictEqual({ url: expect.any(URL), label: 'DoodStream', sourceId: 'doodstream_fr', @@ -70,6 +57,6 @@ describe('FrenchCloud', () => { Referer: 'http://dood.to/', }, }); - expect(streams[3]?.url.href).toMatch(/^https:\/\/.*?token.*?expiry/); + expect(streams[2]?.url.href).toMatch(/^https:\/\/.*?token.*?expiry/); }); }); diff --git a/src/handler/MeineCloud.test.ts b/src/handler/MeineCloud.test.ts index b2a2fc1..ff65fef 100644 --- a/src/handler/MeineCloud.test.ts +++ b/src/handler/MeineCloud.test.ts @@ -27,7 +27,7 @@ describe('MeineCloud', () => { test('handle imdb the devil\'s bath', async () => { const streams = (await handler.handle(ctx, 'movie', 'tt29141112')).filter(stream => stream !== undefined); - expect(streams).toHaveLength(4); + expect(streams).toHaveLength(3); expect(streams[0]).toStrictEqual({ url: expect.any(URL), label: 'SuperVideo', @@ -47,19 +47,6 @@ describe('MeineCloud', () => { }); expect(streams[1]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); expect(streams[2]).toStrictEqual({ - url: expect.any(URL), - label: 'Mixdrop', - sourceId: 'mixdrop_de', - height: 0, - bytes: 1256277934, - countryCode: 'de', - requestHeaders: { - 'Referer': 'https://mixdrop.ag', - 'User-Agent': 'Fake UserAgent', - }, - }); - expect(streams[2]?.url.href).toMatch(/^https:\/\/.*?s=.*?e=.*?t=/); - expect(streams[3]).toStrictEqual({ url: expect.any(URL), label: 'DoodStream', sourceId: 'doodstream_de', @@ -70,6 +57,6 @@ describe('MeineCloud', () => { Referer: 'http://dood.to/', }, }); - expect(streams[3]?.url.href).toMatch(/^https:\/\/.*?token.*?expiry/); + expect(streams[2]?.url.href).toMatch(/^https:\/\/.*?token.*?expiry/); }); }); diff --git a/src/handler/MostraGuarda.test.ts b/src/handler/MostraGuarda.test.ts index 8ea193c..0b07098 100644 --- a/src/handler/MostraGuarda.test.ts +++ b/src/handler/MostraGuarda.test.ts @@ -27,7 +27,7 @@ describe('MostraGuarda', () => { test('handle imdb the devil\'s bath', async () => { const streams = (await handler.handle(ctx, 'movie', 'tt29141112')).filter(stream => stream !== undefined); - expect(streams).toHaveLength(4); + expect(streams).toHaveLength(3); expect(streams[0]).toStrictEqual({ url: expect.any(URL), label: 'SuperVideo', @@ -47,19 +47,6 @@ describe('MostraGuarda', () => { }); expect(streams[1]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); expect(streams[2]).toStrictEqual({ - url: expect.any(URL), - label: 'Mixdrop', - sourceId: 'mixdrop_it', - height: 0, - bytes: 1170378588, - countryCode: 'it', - requestHeaders: { - 'Referer': 'https://mixdrop.ag', - 'User-Agent': 'Fake UserAgent', - }, - }); - expect(streams[2]?.url.href).toMatch(/^https:\/\/.*?s=.*?e=.*?t=/); - expect(streams[3]).toStrictEqual({ url: expect.any(URL), label: 'DoodStream', sourceId: 'doodstream_it', @@ -70,6 +57,6 @@ describe('MostraGuarda', () => { Referer: 'http://dood.to/', }, }); - expect(streams[3]?.url.href).toMatch(/^https:\/\/.*?token.*?expiry/); + expect(streams[2]?.url.href).toMatch(/^https:\/\/.*?token.*?expiry/); }); }); diff --git a/src/handler/VerHdLink.test.ts b/src/handler/VerHdLink.test.ts index a2d2e47..693defa 100644 --- a/src/handler/VerHdLink.test.ts +++ b/src/handler/VerHdLink.test.ts @@ -24,16 +24,16 @@ describe('VerHdLink', () => { expect(streams).toHaveLength(0); }); - test('handle mickey 17', async () => { - const streams = (await handler.handle(ctx, 'movie', 'tt12299608')).filter(stream => stream !== undefined); + test('handle titanic', async () => { + const streams = (await handler.handle(ctx, 'movie', 'tt0120338')).filter(stream => stream !== undefined); - expect(streams).toHaveLength(8); + expect(streams).toHaveLength(4); expect(streams[0]).toStrictEqual({ url: expect.any(URL), label: 'SuperVideo', sourceId: 'supervideo_mx', - height: 720, - bytes: 1288490188, + height: 556, + bytes: 1503238553, countryCode: 'mx', }); expect(streams[0]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); @@ -41,78 +41,28 @@ describe('VerHdLink', () => { url: expect.any(URL), label: 'Dropload', sourceId: 'dropload_mx', - height: 720, - bytes: 1181116006, + height: 556, + bytes: 1503238553, countryCode: 'mx', }); expect(streams[1]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); expect(streams[2]).toStrictEqual({ - url: expect.any(URL), - label: 'Mixdrop', - sourceId: 'mixdrop_mx', - height: 0, - bytes: 1299227607, - countryCode: 'mx', - requestHeaders: { - 'Referer': 'https://mixdrop.ag', - 'User-Agent': 'Fake UserAgent', - }, - }); - expect(streams[2]?.url.href).toMatch(/^https:\/\/.*?s=.*?e=.*?t=/); - expect(streams[3]).toStrictEqual({ - url: expect.any(URL), - label: 'DoodStream', - sourceId: 'doodstream_mx', - height: 0, - bytes: 0, - countryCode: 'mx', - requestHeaders: { - Referer: 'http://dood.to/', - }, - }); - expect(streams[3]?.url.href).toMatch(/^https:\/\/.*?token.*?expiry/); - expect(streams[4]).toStrictEqual({ url: expect.any(URL), label: 'SuperVideo', sourceId: 'supervideo_es', - height: 720, - bytes: 1288490188, + height: 544, + bytes: 1610612736, countryCode: 'es', }); - expect(streams[4]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); - expect(streams[5]).toStrictEqual({ + expect(streams[2]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); + expect(streams[3]).toStrictEqual({ url: expect.any(URL), label: 'Dropload', sourceId: 'dropload_es', - height: 720, - bytes: 1181116006, + height: 544, + bytes: 1610612736, countryCode: 'es', }); - expect(streams[5]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); - expect(streams[6]).toStrictEqual({ - url: expect.any(URL), - label: 'Mixdrop', - sourceId: 'mixdrop_es', - height: 0, - bytes: 1342177280, - countryCode: 'es', - requestHeaders: { - 'Referer': 'https://mixdrop.ag', - 'User-Agent': 'Fake UserAgent', - }, - }); - expect(streams[6]?.url.href).toMatch(/^https:\/\/.*?s=.*?e=.*?t=/); - expect(streams[7]).toStrictEqual({ - url: expect.any(URL), - label: 'DoodStream', - sourceId: 'doodstream_es', - height: 0, - bytes: 0, - countryCode: 'es', - requestHeaders: { - Referer: 'http://dood.to/', - }, - }); - expect(streams[7]?.url.href).toMatch(/^https:\/\/.*?token.*?expiry/); + expect(streams[3]?.url.href).toMatch(/^https:\/\/.*?.m3u8/); }); }); diff --git a/src/utils/Fetcher.ts b/src/utils/Fetcher.ts index 4d735f6..87a3f62 100644 --- a/src/utils/Fetcher.ts +++ b/src/utils/Fetcher.ts @@ -37,7 +37,7 @@ export class Fetcher { return { ...config, headers: { - 'User-Agent': this.getUserAgentForIp(ctx.ip), + 'User-Agent': this.createUserAgentForIp(ctx.ip), 'Forwarded': `for=${ctx.ip}`, 'Referer': `${url.origin}`, 'X-Forwarded-For': ctx.ip, @@ -48,7 +48,7 @@ export class Fetcher { }; }; - public readonly getUserAgentForIp = (ip: string): string => { + private readonly createUserAgentForIp = (ip: string): string => { let userAgent = this.ipUserAgentCache.get(ip); if (userAgent) { return userAgent; diff --git a/src/utils/StreamResolver.test.ts b/src/utils/StreamResolver.test.ts index 392cdb0..171be4a 100644 --- a/src/utils/StreamResolver.test.ts +++ b/src/utils/StreamResolver.test.ts @@ -91,38 +91,6 @@ describe('resolve', () => { videoSize: 1073741824, }, }, - { - url: expect.any(String), - name: 'WebStreamr', - title: 'Mixdrop | 💾 1.17 GB | 🇩🇪', - behaviorHints: { - bingeGroup: 'webstreamr-mixdrop_de', - notWebReady: true, - proxyHeaders: { - request: { - 'Referer': 'https://mixdrop.ag', - 'User-Agent': 'Fake UserAgent', - }, - }, - videoSize: 1256277934, - }, - }, - { - url: expect.any(String), - name: 'WebStreamr', - title: 'Mixdrop | 💾 1.09 GB | 🇮🇹', - behaviorHints: { - bingeGroup: 'webstreamr-mixdrop_it', - notWebReady: true, - proxyHeaders: { - request: { - 'Referer': 'https://mixdrop.ag', - 'User-Agent': 'Fake UserAgent', - }, - }, - videoSize: 1170378588, - }, - }, { url: expect.any(String), name: 'WebStreamr', diff --git a/src/utils/__fixtures__/Fetcher/http:dood.toe2ld51itfvzib b/src/utils/__fixtures__/Fetcher/http:dood.toe2ld51itfvzib deleted file mode 100644 index 9aea138..0000000 --- a/src/utils/__fixtures__/Fetcher/http:dood.toe2ld51itfvzib +++ /dev/null @@ -1 +0,0 @@ - mickey-17-2025-[latino] - DoodStream

Not Found

video you are looking for is not found.

\ No newline at end of file diff --git a/src/utils/__fixtures__/Fetcher/http:dood.toe4xpbdr8vx5qc b/src/utils/__fixtures__/Fetcher/http:dood.toe4xpbdr8vx5qc deleted file mode 100644 index e8971c4..0000000 --- a/src/utils/__fixtures__/Fetcher/http:dood.toe4xpbdr8vx5qc +++ /dev/null @@ -1 +0,0 @@ - mickey-17-2025-2[castellano] - DoodStream

Not Found

video you are looking for is not found.

\ No newline at end of file diff --git a/src/utils/__fixtures__/Fetcher/http:dood.toegy8l8mb2i311 b/src/utils/__fixtures__/Fetcher/http:dood.toegy8l8mb2i311 new file mode 100644 index 0000000..98ed128 --- /dev/null +++ b/src/utils/__fixtures__/Fetcher/http:dood.toegy8l8mb2i311 @@ -0,0 +1 @@ + Video not found | DoodStream

Not Found

video you are looking for is not found.

\ No newline at end of file diff --git a/src/utils/__fixtures__/Fetcher/http:dood.toerw7rxdfrbg09 b/src/utils/__fixtures__/Fetcher/http:dood.toerw7rxdfrbg09 new file mode 100644 index 0000000..98ed128 --- /dev/null +++ b/src/utils/__fixtures__/Fetcher/http:dood.toerw7rxdfrbg09 @@ -0,0 +1 @@ + Video not found | DoodStream

Not Found

video you are looking for is not found.

\ No newline at end of file diff --git a/src/utils/__fixtures__/Fetcher/http:dood.topass_md5206423523-139-197-1747424982-e1005ab93b4c5ab17485799f5b02f543xfjqlaupznxh9878fn3lc9db b/src/utils/__fixtures__/Fetcher/http:dood.topass_md5206423523-139-197-1747424982-e1005ab93b4c5ab17485799f5b02f543xfjqlaupznxh9878fn3lc9db deleted file mode 100644 index 4f1c9bc..0000000 --- a/src/utils/__fixtures__/Fetcher/http:dood.topass_md5206423523-139-197-1747424982-e1005ab93b4c5ab17485799f5b02f543xfjqlaupznxh9878fn3lc9db +++ /dev/null @@ -1 +0,0 @@ -https://sc582x.cloudatacdn.com/u5kj7hvlixblsdgge5a4eza2jq47t2hxw6eluvwfaatnwq6j4skdwj4oglea/o59vueq2rh~ \ No newline at end of file diff --git a/src/utils/__fixtures__/Fetcher/http:dood.topass_md5206735176-139-197-1747424982-9973f08f7b32c977fee0aa7891eb270aly7u2yzord2mx08ozt1vch47 b/src/utils/__fixtures__/Fetcher/http:dood.topass_md5206735176-139-197-1747424982-9973f08f7b32c977fee0aa7891eb270aly7u2yzord2mx08ozt1vch47 deleted file mode 100644 index 2082b38..0000000 --- a/src/utils/__fixtures__/Fetcher/http:dood.topass_md5206735176-139-197-1747424982-9973f08f7b32c977fee0aa7891eb270aly7u2yzord2mx08ozt1vch47 +++ /dev/null @@ -1 +0,0 @@ -https://dw120l.cloudatacdn.com/u5kj6npjllblsdgge6dmeyqoldb72gsikji45jrtdcluvvchjphpotxq7uyq/xqe2dvlb2w~ \ No newline at end of file diff --git a/src/utils/__fixtures__/Fetcher/https:dropload.io96mnzbkw3gg5.html b/src/utils/__fixtures__/Fetcher/https:dropload.io3rj3nyfors6b.html similarity index 84% rename from src/utils/__fixtures__/Fetcher/https:dropload.io96mnzbkw3gg5.html rename to src/utils/__fixtures__/Fetcher/https:dropload.io3rj3nyfors6b.html index 505ab59..5624316 100644 --- a/src/utils/__fixtures__/Fetcher/https:dropload.io96mnzbkw3gg5.html +++ b/src/utils/__fixtures__/Fetcher/https:dropload.io3rj3nyfors6b.html @@ -19,10 +19,10 @@ - - - - + + + + @@ -91,12 +91,12 @@
- + - @@ -137,8 +137,8 @@ $.cookie('aff', '149', { expires: 10 }); --> - - + + +
@@ -166,7 +166,7 @@ $.cookie('aff', '149', { expires: 10 });
-

mickey-17-2025-[latino]

+

titanic-1997-3[subtitulado]

@@ -178,7 +178,7 @@ $.cookie('aff', '149', { expires: 10 });
- on Apr 6, 2025 + on Jun 29, 2023
@@ -187,7 +187,7 @@ $.cookie('aff', '149', { expires: 10 });
- 02:16:57 + 03:14:49
@@ -205,13 +205,13 @@ $.cookie('aff', '149', { expires: 10 });
-
- @@ -243,14 +243,14 @@ $.cookie('aff', '149', { expires: 10 }); - + - HD quality
1332x720, 1.1 GB + HD quality
1280x556, 1.4 GB
@@ -270,7 +270,7 @@ $.cookie('aff', '149', { expires: 10 });
- - - - + - - - + + @@ -495,7 +495,7 @@ $.cookie('aff', '149', { expires: 10 }); - + diff --git a/src/utils/__fixtures__/Fetcher/https:dropload.iorlqh0n87n00f.html b/src/utils/__fixtures__/Fetcher/https:dropload.ioick4ti66vt6s.html similarity index 74% rename from src/utils/__fixtures__/Fetcher/https:dropload.iorlqh0n87n00f.html rename to src/utils/__fixtures__/Fetcher/https:dropload.ioick4ti66vt6s.html index 1b69018..db7b4d4 100644 --- a/src/utils/__fixtures__/Fetcher/https:dropload.iorlqh0n87n00f.html +++ b/src/utils/__fixtures__/Fetcher/https:dropload.ioick4ti66vt6s.html @@ -19,10 +19,10 @@ - - - - + + + + @@ -91,12 +91,12 @@
- + - @@ -137,8 +137,8 @@ $.cookie('aff', '149', { expires: 10 }); --> - - + + +
@@ -166,7 +166,7 @@ $.cookie('aff', '149', { expires: 10 });
-

mickey-17-2025-2[castellano]

+

titanic-1997-2[castellano]

@@ -178,7 +178,7 @@ $.cookie('aff', '149', { expires: 10 });
- on Apr 9, 2025 + on Jun 29, 2023
@@ -187,7 +187,7 @@ $.cookie('aff', '149', { expires: 10 });
- 02:17:22 + 03:06:52
@@ -205,13 +205,13 @@ $.cookie('aff', '149', { expires: 10 });
-
- - - - + - - - + + @@ -495,7 +495,7 @@ $.cookie('aff', '149', { expires: 10 }); - + diff --git a/src/utils/__fixtures__/Fetcher/https:dropload.iojjjx9j5joiz8.html b/src/utils/__fixtures__/Fetcher/https:dropload.iojjjx9j5joiz8.html new file mode 100644 index 0000000..d5fb8b4 --- /dev/null +++ b/src/utils/__fixtures__/Fetcher/https:dropload.iojjjx9j5joiz8.html @@ -0,0 +1,502 @@ + + + + + + Dropload - Revolution Video Hosting + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ +
+ + + +
+
+ +
+ + + + +
+ +
+ + + + +
+
+
+
+ + + + + + + + + + + + + + + +
+
+
+
+ + + + + + + +
+ + + + + + + + + + + + + +
+ +
+ + + + + + + + + + + +
+
+ +

titanic-1997-[latino]

+
+
+
+
+
+
+
+ + +
+ + on Jun 29, 2023 +
+ +
+ + +
+
+ + 03:14:50 +
+ +
+
+
+ + + +
+
+
+
+
+ +
+
+ +
+
+
+ + +
+
+ + + + +
+ +
+ + + + + + +
+
+ + +
+
+ + +
+
+
+ + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + diff --git a/src/utils/__fixtures__/Fetcher/https:mixdrop.age3nzwveprim63or6 b/src/utils/__fixtures__/Fetcher/https:mixdrop.age3nzwveprim63or6 deleted file mode 100644 index c9ab4e1..0000000 --- a/src/utils/__fixtures__/Fetcher/https:mixdrop.age3nzwveprim63or6 +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/utils/__fixtures__/Fetcher/https:mixdrop.age7k3wwq14cdw6w6p b/src/utils/__fixtures__/Fetcher/https:mixdrop.age7k3wwq14cdw6w6p deleted file mode 100644 index dd0e450..0000000 --- a/src/utils/__fixtures__/Fetcher/https:mixdrop.age7k3wwq14cdw6w6p +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/utils/__fixtures__/Fetcher/https:mixdrop.agel7v73zqrfdj19z b/src/utils/__fixtures__/Fetcher/https:mixdrop.agel7v73zqrfdj19z deleted file mode 100644 index e2985f0..0000000 --- a/src/utils/__fixtures__/Fetcher/https:mixdrop.agel7v73zqrfdj19z +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/utils/__fixtures__/Fetcher/https:mixdrop.agevk196d6xfzwwo1 b/src/utils/__fixtures__/Fetcher/https:mixdrop.agevk196d6xfzwwo1 deleted file mode 100644 index 243ef80..0000000 --- a/src/utils/__fixtures__/Fetcher/https:mixdrop.agevk196d6xfzwwo1 +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/utils/__fixtures__/Fetcher/https:mixdrop.agexw01q6w4uk3rn7 b/src/utils/__fixtures__/Fetcher/https:mixdrop.agexw01q6w4uk3rn7 deleted file mode 100644 index eadecfa..0000000 --- a/src/utils/__fixtures__/Fetcher/https:mixdrop.agexw01q6w4uk3rn7 +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/utils/__fixtures__/Fetcher/https:mixdrop.agf3nzwveprim63or6 b/src/utils/__fixtures__/Fetcher/https:mixdrop.agf3nzwveprim63or6 deleted file mode 100644 index e8ce60e..0000000 --- a/src/utils/__fixtures__/Fetcher/https:mixdrop.agf3nzwveprim63or6 +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - -MixDrop - Watch des-teufels-bad-2024 - - - - - - - - - - - - - - - - - - -
-
-
- - - - -
-
-
-
-
- -
- -
-
-
- des-teufels-bad-2024.mp4 1.17 GB
- -
-
-
- -
- DOWNLOAD -
-
-
-
-
-
- - -
-
-
- -
-
-
- -
-
-
Uploads ( 0 / 0 )
-
-
-
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/utils/__fixtures__/Fetcher/https:mixdrop.agf7k3wwq14cdw6w6p b/src/utils/__fixtures__/Fetcher/https:mixdrop.agf7k3wwq14cdw6w6p deleted file mode 100644 index 6ec9e8d..0000000 --- a/src/utils/__fixtures__/Fetcher/https:mixdrop.agf7k3wwq14cdw6w6p +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - -MixDrop - Watch mickey-17-2025-2[castellano] - - - - - - - - - - - - - - - - - - -
-
-
- - - - -
-
-
-
-
- -
- -
-
-
- mickey-17-2025-2[castellano].mp4 1.25 GB
- -
-
-
- -
- DOWNLOAD -
-
-
-
-
-
- - -
-
-
- -
-
-
- -
-
-
Uploads ( 0 / 0 )
-
-
-
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/utils/__fixtures__/Fetcher/https:mixdrop.agfl7v73zqrfdj19z b/src/utils/__fixtures__/Fetcher/https:mixdrop.agfl7v73zqrfdj19z deleted file mode 100644 index 08cc5b7..0000000 --- a/src/utils/__fixtures__/Fetcher/https:mixdrop.agfl7v73zqrfdj19z +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - -MixDrop - Watch the-devils-bath-un-enfant-pour-le-diable-2024-cam - - - - - - - - - - - - - - - - - - -
-
-
- - - - -
-
-
-
-
- -
- -
-
-
- the-devils-bath-un-enfant-pour-le-diable-2024-cam.mp4 921.92 MB
- -
-
-
- -
- DOWNLOAD -
-
-
-
-
-
- - -
-
-
- -
-
-
- -
-
-
Uploads ( 0 / 0 )
-
-
-
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/utils/__fixtures__/Fetcher/https:mixdrop.agfvk196d6xfzwwo1 b/src/utils/__fixtures__/Fetcher/https:mixdrop.agfvk196d6xfzwwo1 deleted file mode 100644 index 4d683cc..0000000 --- a/src/utils/__fixtures__/Fetcher/https:mixdrop.agfvk196d6xfzwwo1 +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - -MixDrop - Watch the-devils-bath-2024-sd-sub-ita - - - - - - - - - - - - - - - - - - -
-
-
- - - - -
-
-
-
-
- -
- -
-
-
- the-devils-bath-2024-sd-sub-ita.mp4 1.09 GB
- -
-
-
- -
- DOWNLOAD -
-
-
-
-
-
- - -
-
-
- -
-
-
- -
-
-
Uploads ( 0 / 0 )
-
-
-
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/utils/__fixtures__/Fetcher/https:mixdrop.agfxw01q6w4uk3rn7 b/src/utils/__fixtures__/Fetcher/https:mixdrop.agfxw01q6w4uk3rn7 deleted file mode 100644 index a5bef1d..0000000 --- a/src/utils/__fixtures__/Fetcher/https:mixdrop.agfxw01q6w4uk3rn7 +++ /dev/null @@ -1,213 +0,0 @@ - - - - - - -MixDrop - Watch mickey-17-2025-[latino] - - - - - - - - - - - - - - - - - - -
-
-
- - - - -
-
-
-
-
- -
- -
-
-
- mickey-17-2025-[latino].mp4 1.21 GB
- -
-
-
- -
- DOWNLOAD -
-
-
-
-
-
- - -
-
-
- -
-
-
- -
-
-
Uploads ( 0 / 0 )
-
-
-
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/utils/__fixtures__/Fetcher/https:supervideo.cca0iiampow9za b/src/utils/__fixtures__/Fetcher/https:supervideo.cc8xc9f2x2w09p similarity index 81% rename from src/utils/__fixtures__/Fetcher/https:supervideo.cca0iiampow9za rename to src/utils/__fixtures__/Fetcher/https:supervideo.cc8xc9f2x2w09p index 3535624..82e5047 100644 --- a/src/utils/__fixtures__/Fetcher/https:supervideo.cca0iiampow9za +++ b/src/utils/__fixtures__/Fetcher/https:supervideo.cc8xc9f2x2w09p @@ -1,23 +1,23 @@ - + - Watch mickey 2025 [latino] + Watch titanic 1997 3[subtitulado] - - + + - - - + + + @@ -107,8 +107,8 @@ - - + + @@ -121,9 +121,9 @@ - - + @@ -144,10 +144,10 @@ $.cookie('aff', '15808', { expires: 10 });
- - - - + + + -
+ +

- mickey-17-2025-[latino] + titanic-1997-3[subtitulado]

  • on - Apr 6, 2025 + Jun 29, 2023
  • spainman
  • - 3735 views + 49 views
- - @@ -397,5 +397,5 @@ $.cookie('aff', '15808', { expires: 10 });
- + \ No newline at end of file diff --git a/src/utils/__fixtures__/Fetcher/https:supervideo.ccxrbn7pwrqj06 b/src/utils/__fixtures__/Fetcher/https:supervideo.ccg6okbr0kd790 similarity index 80% rename from src/utils/__fixtures__/Fetcher/https:supervideo.ccxrbn7pwrqj06 rename to src/utils/__fixtures__/Fetcher/https:supervideo.ccg6okbr0kd790 index 23a3d6d..c74c5c9 100644 --- a/src/utils/__fixtures__/Fetcher/https:supervideo.ccxrbn7pwrqj06 +++ b/src/utils/__fixtures__/Fetcher/https:supervideo.ccg6okbr0kd790 @@ -1,23 +1,23 @@ - + - Watch mickey 2025 2[castellano] + Watch titanic 1997 [latino] - - + + - - - + + + @@ -107,8 +107,8 @@ - - + + @@ -121,9 +121,9 @@ - - + @@ -144,10 +144,10 @@ $.cookie('aff', '15808', { expires: 10 });
- - - - + + + -
+ +

- mickey-17-2025-2[castellano] + titanic-1997-[latino]

  • on - Apr 9, 2025 + Jun 29, 2023
  • spainman
  • - 1112 views + 1448 views
- - @@ -397,5 +397,5 @@ $.cookie('aff', '15808', { expires: 10 });
- + \ No newline at end of file diff --git a/src/utils/__fixtures__/Fetcher/https:supervideo.ccqe1fviow8uwy b/src/utils/__fixtures__/Fetcher/https:supervideo.ccqe1fviow8uwy new file mode 100644 index 0000000..f05d463 --- /dev/null +++ b/src/utils/__fixtures__/Fetcher/https:supervideo.ccqe1fviow8uwy @@ -0,0 +1,401 @@ + + + + + + + Watch titanic 1997 2[castellano] + + + + + + + + + + + + + + + + + + + + + + +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+
+
+ + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + +
+
+
+ +
+
+

+ titanic-1997-2[castellano] +

+
    +
  • + on + Jun 29, 2023 +
  • +
  • + spainman +
  • +
  • + 257 views +
  • +
  • + +
  • + +
+
+
+
    +
  • +
  • +
+
+
+
+ + + +
+
+
+ +
+
+
+
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+ + +
+
+
+
+
+
+ +
+
+
+
+ +
+
+
+
+
+
+
+
+ + +
+
+
+
+
+
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/src/utils/__fixtures__/Fetcher/https:verhdlink.cammoviett12299608 b/src/utils/__fixtures__/Fetcher/https:verhdlink.cammoviett0120338 similarity index 87% rename from src/utils/__fixtures__/Fetcher/https:verhdlink.cammoviett12299608 rename to src/utils/__fixtures__/Fetcher/https:verhdlink.cammoviett0120338 index 7f412fc..578b59e 100644 --- a/src/utils/__fixtures__/Fetcher/https:verhdlink.cammoviett12299608 +++ b/src/utils/__fixtures__/Fetcher/https:verhdlink.cammoviett0120338 @@ -1,10 +1,10 @@ - + - Movie tt12299608 - + Movie tt0120338 + @@ -16,7 +16,7 @@ - +
@@ -36,48 +36,46 @@
    -
  • +
  • supervideo
  • -
  • +
  • dropload
  • -
  • +
  • Player HD
  • -
  • +
  • mixdrop
  • -
  • +
  • streamtape
  • -
  • +
  • doodstream
    -
  • +
  • supervideo
  • -
  • +
  • dropload
  • -
  • +
  • Player HD
  • -
  • +
  • mixdrop
  • -
  • - streamtape
  • -
  • +
  • doodstream
    -
  • +
  • supervideo
  • -
  • +
  • dropload
  • -
  • +
  • Player HD
  • -
  • +
  • mixdrop
  • -
  • +
  • streamtape
  • -
  • +
  • doodstream
@@ -133,7 +131,7 @@
- +