Powerful PornHub API for Node.js
npm install pornhub.jsVideo, Album, Photo, PornStar and Model
Video, Album, Gif, PornStar and Model, support all the query parameters
Video, Album, Photo, PornStar, and Model
Video, Album, Gif, PornStar, and Model
Node.js >= 14
bash
npm install pornhub.js --save
pnpm install pornhub.js --save
yarn add pornhub.js
`
Usage
`js
import { PornHub } from 'pornhub.js'
// const { PornHub } = require('pornhub.js')
const pornhub = new PornHub()
`
$3
`js
const result = pornhub.searchVideo('tokyo hot')
console.log(result.data[0]) // first video
`
Result
`json5
{
"title": "Japanese Tokyo Hot",
"url": "https://www.pornhub.com/view_video.php?viewkey=*",
"views": "14M",
"duration": "14:24",
"hd": true,
"premium": false,
"freePremium": false,
"preview": "https://ci.phncdn.com/videos/*.jpg"
}
`
$3
`js
const url = 'https://www.pornhub.com/view_video.php?viewkey=ph5ac81eabe203d'
const video = await pornhub.video(url)
console.log(video)
`
Result
`json5
{
"title": "Japanese Tokyo Hot",
"views": 49517,
"duration": 1922,
"durationFormatted": "32:02",
"vote": { "up": 64, "down": 14, "total": 78, "rating": 0.82 },
"premium": false,
"thumb": "data:image/gif...",
"provider": { "username": "wowgirls", "url": "/users/wowgirls" },
"tags": ["hardcore", "hentai", "memes"],
"categories": ["HD-Porn", "SFW"],
"pornstars": ["pig"],
"mediaDefinitions": [
{
"defaultQuality": true,
"format": "hls",
"quality": 720,
"videoUrl": "https://cv.phncdn.com/videos/.../720P_1500K_.m3u8?validfrom=...&validto=...&rate=...&burst=...&ip=...&ipa=...&hash=..."
},
{
"defaultQuality": false,
"format": "hls",
"quality": [1080, 720, 480, 240],
"videoUrl": "https://cv.phncdn.com/videos/.../480P_600K_.m3u8?validfrom=...&validto=...&rate=...&burst=...&ip=...&ipa=...&hash=..."
},
{
"defaultQuality": false,
"format": "hls",
"quality": 240,
"videoUrl": "https://cv.phncdn.com/videos/.../240P_400K_.m3u8?validfrom=...&validto=...&rate=...&burst=...&ip=...&ipa=...&hash=...",
"remote": true
}
]
}
`
$3
See DOCUMENT for more information.
Notice
* Please note that video downloading is no longer supported. We are unable to provide a download link due to the changes made by PornHub. Instead, the raw mediaDefinitions are provided. You can try to download videos via the m3u8 information in mediaDefinitions` or use alternative tools such as yt-dlp. But that would be out of the scope of this project.