{"version":3,"sources":["jsdelivr-header.js","/npm/xvideos-scraper@1.0.4/XVideos.js"],"names":[],"mappings":"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","file":"/npm/xvideos-scraper@1.0.4/XVideos.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/xvideos-scraper@1.0.4/XVideos.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","const axios = require(\"axios\")\nconst cheerio = require(\"cheerio\")\nconst entities = require(\"entities\");\nconst FormData = require('form-data');\nconst qs = require('qs')\n\nmodule.exports.searchVideo = async (val)=>{\n if (val.proxy === false || typeof val.proxy == \"undefined\"){\n  try {\n   var obj = {\n    k: val.search,\n    sort: val.sort,\n    datef: val.filterDate,\n    durf: val.filterDuration,\n    quality: val.filterQuality,\n    vw: val.viewWatched,\n    p: val.pagination - 1,\n    top: ''\n   }\n   Object.keys(obj).forEach(key => {\n    if (obj[key] === (undefined || \"undefined\")) {\n     delete obj[key];\n    }\n   });\n   query = qs.stringify(obj);\n   let url = `http://www.xvideos2.com/?${query}`\n   var {data} = await axios(url)\n   $ = cheerio.load(data)\n   let videosContainer = $(\"div[id='content'] div[class='mozaique cust-nb-cols'] div[class='thumb-block  ']\");\n   let arr = [];\n   videosContainer.each((idx, el) => {\n    let obj = {};\n    obj.video = \"https:\\/\\/www.xvideos2.com\"+$(el).children(\"div[class='thumb-inside']\").children(\"div[class='thumb']\").children(\"a\").attr(\"href\");\n    obj.thumbnail = $(el).children(\"div[class='thumb-inside']\").children(\"div[class='thumb']\").children(\"a\").children(\"img\").attr(\"data-src\");\n    obj.title = $(el).children(\"div[class='thumb-under']\").children(\"p\").children(\"a\").attr(\"title\");\n    obj.duration = $(el).children(\"div[class='thumb-under']\").children(\"p\").children(\"a\").children(\"span[class='duration']\").text();\n    obj.uploaderName = $(el).children(\"div[class='thumb-under']\").children(\"p[class='metadata']\").children(\"span\").children(\"span\").children(\"a\").children(\"span[class='name']\").text();\n    obj.uploaderProfile = \"https:\\/\\/www.xvideos2.com\"+$(el).children(\"div[class='thumb-under']\").children(\"p[class='metadata']\").children(\"span\").children(\"span\").children(\"a\").attr(\"href\");\n    arr.push(obj);\n   });\n   return arr\n  }\n  catch (e){\n   return e.response\n  }\n } else if (val.proxy === true) {\n  try {\n   var obj = {\n    k: val.search,\n    sort: val.sort,\n    datef: val.filterDate,\n    durf: val.filterDuration,\n    quality: val.filterQuality,\n    vw: val.viewWatched,\n    p: val.pagination - 1,\n    top: ''\n   }\n   Object.keys(obj).forEach(key => {\n    if (obj[key] === (undefined || \"undefined\")) {\n     delete obj[key];\n    }\n   });\n   query = qs.stringify(obj)\n   query = \"http://www.xvideos2.com/?\"+query\n   var bodyFormData = new FormData();\n   bodyFormData.append('url', query);\n   let html = await axios({\n    method: \"post\",\n    url: \"https://zend2.com/index.php\",\n    data: bodyFormData,\n    headers: {\n     \"Content-Type\": \"multipart/form-data\"\n    }\n   })\n   $ = cheerio.load(html.data)\n   let videosContainer = $(\"div[id='content'] div[class='mozaique cust-nb-cols'] div[class='thumb-block  ']\");\n   let arr = [];\n   videosContainer.each((idx, el) => {\n    let obj = {};\n    obj.video = $(el).children(\"div[class='thumb-inside']\").children(\"div[class='thumb']\").children(\"a\").attr(\"href\");\n    obj.title = $(el).children(\"div[class='thumb-under']\").children(\"p\").children(\"a\").attr(\"title\");\n    obj.duration = $(el).children(\"div[class='thumb-under']\").children(\"p\").children(\"a\").children(\"span[class='duration']\").text();\n    obj.uploaderName = $(el).children(\"div[class='thumb-under']\").children(\"p[class='metadata']\").children(\"span\").children(\"span\").children(\"a\").children(\"span[class='name']\").text();\n    obj.uploaderProfile = $(el).children(\"div[class='thumb-under']\").children(\"p[class='metadata']\").children(\"span\").children(\"span\").children(\"a\").attr(\"href\");\n    arr.push(obj);\n   });\n   return arr\n  }\n  catch (e){\n   return e.response\n  }\n }\n}\n\nmodule.exports.getVideoData = async (val)=>{\n if (val.proxy === false || typeof val.proxy == \"undefined\"){\n  try {\n   var {data} = await axios(val.videoUrl)\n   $ = cheerio.load(data)\n   let obj = {}\n   obj.Default_Quality = $($(\"div[id='html5video'] div[id='html5video_base'] div\").children(\"a\")[0]).attr(\"href\")\n   obj.Low_Quality = $($(\"div[id='html5video'] div[id='html5video_base'] div\").children(\"a\")[1]).attr(\"href\")\n   obj.HD_Quality = $($(\"div[id='html5video'] div[id='html5video_base'] div\").children(\"a\")[2]).attr(\"href\")\n   obj.UHD_Quality = $($(\"script\")[8]).text().split(\"setVideoHLS\")[1].split(\"('\")[1].split(\"')\")[0]\n   let arr = [JSON.parse($($(\"script\")[2]).text().replace(/@/g,\"\"))]\n   arr[0].contentUrl = obj\n   arr[0].name = entities.decodeHTML(arr[0].name)\n   arr[0].description = entities.decodeHTML(arr[0].description)\n   arr[0].interactionStatistic.userInteractionCount = arr[0].interactionStatistic.userInteractionCount.toString().replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\")+\" Views\";\n   const {type,context,duration, ...newObj} = arr[0]\n   return {...newObj}\n  }\n  catch (e){\n   return e.response\n  }\n } else if (val.proxy === true){\n  try {\n   var {data} = await axios.get(val.videoUrl)\n   $ = cheerio.load(data)\n   var arr = [JSON.parse($($(\"script\")[2]).text().replace(/@/g,\"\"))]\n   arr[0].name = entities.decodeHTML(arr[0].name)\n   arr[0].description = entities.decodeHTML(arr[0].description)\n   const {type,context,duration, ...newObj} = arr[0]\n   return {...newObj}\n  }\n  catch (e){\n   return e.response\n  }\n }\n}"]}