{"_id":"@adulttechinc/xvideos","_rev":"1-4ba1549236a31a9b82871dc3b15e17bd","name":"@adulttechinc/xvideos","dist-tags":{"latest":"1.2.0"},"versions":{"1.2.0":{"name":"@adulttechinc/xvideos","description":"xvideos.com api implementation.","version":"1.2.0","main":"index.js","license":"BSD-3-Clause","repository":{"type":"git","url":"git+https://github.com/adulttechinc/xvideos.git"},"keywords":["crawler","porn","spider","scrapper","api","xvideos","api","library"],"scripts":{"eslint":"eslint . --ext .js","test":"cross-env NODE_ENV=test mocha --exit lib/**/*.spec.js","coverage":"nyc --reporter=html --reporter=lcov npm test"},"dependencies":{"axios":"^0.18.0","cheerio":"^1.0.0-rc.2","puppeteer":"^1.5.0"},"devDependencies":{"chai":"^4.1.2","codeclimate-test-reporter":"^0.5.0","cross-env":"^5.2.0","eslint":"^5.0.1","eslint-config-airbnb-base":"^13.0.0","eslint-plugin-import":"^2.13.0","mocha":"^5.2.0","nyc":"^12.0.2"},"engines":{"node":">=7.6.0"},"contributors":[{"name":"Rodrigo Gomes da Silva","email":"adult.tech.inc@gmail.com","url":"https://github.com/adulttechinc"}],"gitHead":"f2c767e6fc3bbb2bb0c8553f992a3a37323a824a","bugs":{"url":"https://github.com/adulttechinc/xvideos/issues"},"homepage":"https://github.com/adulttechinc/xvideos#readme","_id":"@adulttechinc/xvideos@1.2.0","_nodeVersion":"10.16.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-fnDDykBDMtUx6kzj3y0yNrrHUHuty+yIPJbF5EXYA30I8mOcySC1L1jL6DBpJvxP9TsBKgSMoL5XEQDCX1t7Ng==","shasum":"132d6e2714725acb6b636493ed0f6870b5e53839","tarball":"https://registry.npmjs.org/@adulttechinc/xvideos/-/xvideos-1.2.0.tgz","fileCount":63,"unpackedSize":63428,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdFJUwCRA9TVsSAnZWagAA6+EP/2y8G/3ffeGrusUNBfr5\nEm7kRnKQHASlZVbYBGdkJ9qBdBHmT4avYLBtrQ3pPFxbgGZysToGkEzsQiAR\nPeCcR7eTeIJj0A5kYqzl5orL1buyYcyzzK6WNPjQZCEKAbskD2lj7X+WA9Nt\nxjnffvpDnGHKg/7EUllol1roq5ygJt5IJ1naffRGsgli+CcoN4HDlFVrhSb8\nR3BHbSOSRcbDxKouwGbKZjj3MXl0saU9e8fMJwyUODOORI82rPPhXHoPFT9R\n9rp5jDFvHwwFDPQqZwzMWDxkn4lZtKsXyi0YZKEnbI1fFxOFOqEku1/p49Cf\ngxZ9rvyw0E+CUXmZ2gvQNFqZwrgOj9CQ4OwyQIF29yy0p3frwlP61zHUrKIH\nuiIl53wZBg0fUxC/dcXw0B4SlFUZS5ucR7LdRpIc05/Y0h9CBM9y1aIzQgkk\nz71DPLrTZ8WpzQ4oF3gtXtbVHWnZN8c+MXpkpBPA2Wd6x1jiDPTbB1PZNn3T\nEE+J65oyovhGdH2XbjGO/snTAWNlOP2D9W15RQdovlLTX7Dw88a3I+4MobKO\nB1dydeE7EkRTUHzt9g/G+a649PST69foIQ+LxD4m7wtpO2+/Wi7IiCTOSGDe\njqbgcJdu3VbIhygPNUsPb2nwLUJu6Id3it52d/i9ia5jBRUK4AFfSwHpl57h\nTcgj\r\n=eXmh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwEjzJ6HKjTzBEvNJVR2IG1CoKQqzWw6I/SzjwWk7VFgIgVqSuYD4tnpEXoEOPOvCzqkk+kRgV1ljE7mB1l4avDqA="}]},"maintainers":[{"name":"adulttechinc","email":"adult.tech.inc@gmail.com"}],"_npmUser":{"name":"adulttechinc","email":"adult.tech.inc@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/xvideos_1.2.0_1561629999427_0.018857158375060523"},"_hasShrinkwrap":false}},"time":{"created":"2019-06-27T10:06:39.398Z","1.2.0":"2019-06-27T10:06:39.566Z","modified":"2022-04-04T11:38:06.342Z"},"maintainers":[{"name":"adulttechinc","email":"adult.tech.inc@gmail.com"}],"description":"xvideos.com api implementation.","homepage":"https://github.com/adulttechinc/xvideos#readme","keywords":["crawler","porn","spider","scrapper","api","xvideos","api","library"],"repository":{"type":"git","url":"git+https://github.com/adulttechinc/xvideos.git"},"contributors":[{"name":"Rodrigo Gomes da Silva","email":"adult.tech.inc@gmail.com","url":"https://github.com/adulttechinc"}],"bugs":{"url":"https://github.com/adulttechinc/xvideos/issues"},"license":"BSD-3-Clause","readme":"# xvideos\n\n[![Build Status](https://travis-ci.org/rodrigogs/xvideos.svg?branch=master)](https://travis-ci.org/rodrigogs/xvideos)\n[![Code Climate](https://codeclimate.com/github/rodrigogs/xvideos/badges/gpa.svg)](https://codeclimate.com/github/rodrigogs/xvideos)\n[![Test Coverage](https://codeclimate.com/github/rodrigogs/xvideos/badges/coverage.svg)](https://codeclimate.com/github/rodrigogs/xvideos/coverage)\n\nA a [Node.js](https://nodejs.org) [xvideos.com](xvideos.com) API library.\n\n### Install\n```bash\n$ npm install @rodrigogs/xvideos\n```\n\n### Usage\n```javascript\nconst xvideos = require('@rodrigogs/xvideos');\n\n//-- Inside an async function --//\n\n// Retrieve fresh videos\nconst fresh = await xvideos.videos.fresh({ page: 1 });\nconsole.log(fresh.videos); // { url, path, title, duration, profile: { name, url }, views, }\nconsole.log(fresh.pagination.current); // 1 \nconsole.log(fresh.pagination.pages); // [1, 2, 3, 4, 5...]\nconsole.log(fresh.hasNext()); // true\nconsole.log(fresh.hasPrevious()); // false\n\nconst nextPage = await fresh.next();\nconsole.log(nextPage.pagination.current); // 2\nconsole.log(nextPage.hasNext()); // true\nconsole.log(nextPage.hasPrevious()); // true\n\nconst previousPage = await fresh.previous();\nconsole.log(previousPage.pagination.current); // 1\nconsole.log(previousPage.hasNext()); // true\nconsole.log(previousPage.hasPrevious()); // tfalse\n\nconst detail = await xvideos.videos.details(fresh[0]); /**\n{\n  title,\n  duration,\n  image,\n  videoType,\n  videoWidth,\n  videoHeigth,\n  views,\n  files: {\n    low,\n    high,\n    HLS,\n    thumb,\n    thumb69,\n    thumbSlide,\n    thumbSlideBig\n  }\n} **/\n```\n\n### API\n* Retrieve [dashboard videos](https://www.xvideos.com)\n  ```javascript\n  const dashboardList = await xvideos.videos.dashboard({ page: 1 });\n  ```\n  * Is there a next page? \n    ```javascript\n    console.log(deshboardList.hasNext()); // true or false\n    ```\n  * Is there a previous page? \n    ```javascript\n    console.log(deshboardList.hasPrevious()); // true or false\n    ```\n  * Refresh page videos\n    ```javascript\n    const refreshedVideos = await deshboardList.refresh();\n    ```\n  * Retrieve next deshboard page videos \n    ```javascript\n    const nextVideos = await deshboardList.next();\n    ```\n  * Retrieve previous deshboard page videos\n    ```javascript\n    const previousVideos = await deshboardList.previous();\n    ```\n* Retrieve [fresh videos](https://www.xvideos.com/new/1)\n  ```javascript\n  const freshList = await xvideos.videos.fresh({ page: 1 });\n  ```\n  * Is there a next page? \n    ```javascript\n    console.log(freshList.hasNext()); // true or false\n    ```\n  * Is there a previous page? \n    ```javascript\n    console.log(freshList.hasPrevious()); // true or false\n    ```\n  * Refresh page videos \n    ```javascript\n    const refreshedVideos = await freshList.refresh();\n    ```\n  * Retrieve next fresh page videos \n    ```javascript\n    const nextVideos = await freshList.next();\n    ```\n  * Retrieve previous fresh page videos\n    ```javascript\n    const previousVideos = await freshList.previous();\n    ```\n* Retrieve [best videos](https://www.xvideos.com/best)\n  ```javascript\n  const bestList = await xvideos.videos.best({ year: '2018', month: '02', page: 1 });\n  ```\n  * Is there a next page? \n    ```javascript\n    console.log(bestList.hasNext()); // true or false\n    ```\n  * Is there a previous page? \n    ```javascript\n    console.log(bestList.hasPrevious()); // true or false\n    ```\n  * Refresh page videos \n    ```javascript\n    const refreshedVideos = await bestList.refresh();\n    ```\n  * Retrieve next best page videos \n    ```javascript\n    const nextVideos = await bestList.next();\n    ```\n  * Retrieve previous best page videos\n    ```javascript\n    const previousVideos = await bestList.previous();\n    ```\n* Retrieve [verified videos](https://www.xvideos.com/verified/videos)\n  ```javascript\n  const verifiedList = await xvideos.videos.verified({ page: 1 });\n  ```\n  * Is there a next page? \n    ```javascript\n    console.log(verifiedList.hasNext()); // true or false\n    ```\n  * Is there a previous page? \n    ```javascript\n    console.log(verifiedList.hasPrevious()); // true or false\n    ```\n  * Refresh page videos \n    ```javascript\n    const refreshedVideos = await verifiedList.refresh();\n    ```\n  * Retrieve next verified page videos \n    ```javascript\n    const nextVideos = await verifiedList.next();\n    ```\n  * Retrieve previous verified page videos\n    ```javascript\n    const previousVideos = await verifiedList.previous();\n    ```\n* Retrieve [video details](https://www.xvideos.com/video36638661/chaturbate_lulacum69_30-05-2018)\n  ```javascript\n  const details = await xvideos.videos.details({ url: 'https://www.xvideos.com/video36638661/chaturbate_lulacum69_30-05-2018' });\n  ```\n\n### License\n[Licence](https://github.com/rodrigogs/xvideos/blob/master/LICENSE) © Rodrigo Gomes da Silva\n","readmeFilename":"README.md"}