// THIS SCRAPER DOES NOT CURRENTLY WORK AND IS NOT IN USE import { unpack } from '../util/unpacker'; const BASE_URL = `https://www.vmovee.watch`; const CORS_URL = `${process.env.REACT_APP_CORS_PROXY_URL}${BASE_URL}`; const SHOW_URL = `${CORS_URL}/series` const MOVIE_URL = `${CORS_URL}/movies` const MOVIE_URL_NO_CORS = `${BASE_URL}/movies` async function findContent(searchTerm, type) { try { if (type !== 'movie') return; const searchUrl = `${CORS_URL}/?s=${encodeURIComponent(searchTerm)}`; const searchRes = await fetch(searchUrl).then((d) => d.text()); const parser = new DOMParser(); const doc = parser.parseFromString(searchRes, "text/html"); const nodes = Array.from(doc.querySelectorAll('div.search-page > div.result-item > article')); const results = nodes.map(node => { const imgHolder = node.querySelector('div.image > div.thumbnail > a'); const titleHolder = node.querySelector('div.title > a'); return { type: imgHolder.querySelector('span').textContent === 'TV' ? 'show' : 'movie', title: titleHolder.textContent, year: node.querySelector('div.details > div.meta > span.year').textContent, slug: titleHolder.href.split('/')[4], source: 'vmovee' } }); if (results.length > 1) { return { options: results }; } else { return { options: [ results[0] ] } } } catch (err) { throw new Error(err) } } async function getStreamUrl(slug, type, season, episode) { let url = ''; if (type === 'movie') { url = `${MOVIE_URL}/${slug}`; } else if (type === 'show') { url = `${SHOW_URL}/${slug}`; } const res1 = await fetch(url, { headers: new Headers().append('referer', `${BASE_URL}/dashboard/admin-ajax.php`) }); const id = res1.headers.get('link').split('>')[0].split('?p=')[1]; const res2Headers = new Headers().append('referer', `${BASE_URL}/dashboard/admin-ajax.php`); const form = new FormData(); form.append('action', 'doo_player_ajax') form.append('post', id) form.append('nume', '2') form.append('type', type) const res2 = await fetch(`${CORS_URL}/dashboard/admin-ajax.php`, { method: 'POST', headers: res2Headers, body: form }).then((res) => res.json()); let realUrl = res2.embed_url; console.log(res2) if (realUrl.startsWith('//')) { realUrl = `https:${realUrl}`; } const res3 = await fetch(`${process.env.REACT_APP_CORS_PROXY_URL}${realUrl}`); res3.headers.forEach(console.log) return { url: '' } } const vmovee = { findContent, getStreamUrl } export default vmovee;