mirror of
https://github.com/Inside4ndroid/TMDB-Embed-API.git
synced 2026-10-22 09:35:11 +00:00
added new provider route and updated readme
This commit is contained in:
@@ -1,25 +1,72 @@
|
|||||||
### USAGE
|
# Unoffical Vidsrc API! 👋
|
||||||
- base url:
|
## Sponsorship / Donations
|
||||||
https://your-vercel-domain
|
|
||||||
|
|
||||||
- endpoint:
|
Your sponsorship is vital in helping me achieve this mission. With your support, I can:
|
||||||
- `/vidsrc/{tmdb_id}`
|
|
||||||
|
|
||||||
- parameters:
|
Dedicate more time to developing and improving my projects
|
||||||
- `s` - season (series only)
|
Cover costs for essential tools, services and premium hosting to run public projects
|
||||||
- `e` - episodes (series only)
|
Provide detailed documentation and support for users
|
||||||
|
Every contribution, no matter the size, makes a significant impact.
|
||||||
|
|
||||||
### EXAMPLE MOVIE
|
[Sponsor Me!](https://github.com/sponsors/Inside4ndroid)
|
||||||
|
|
||||||
|
Thank you for considering supporting my work!
|
||||||
|
|
||||||
|
### NOTE:
|
||||||
|
|
||||||
|
This is an api for id's provided at [TMDB](https://www.themoviedb.org/)
|
||||||
|
|
||||||
|
you must use the ID from the tmdb url like this :
|
||||||
|
|
||||||
|
so
|
||||||
```
|
```
|
||||||
https://your-vercel-domain/vidsrc/916224
|
MOVIES:
|
||||||
|
|
||||||
|
https://www.themoviedb.org/movie/1034541-terrifier-3?language=en-GB
|
||||||
|
|
||||||
|
TV SHOWS:
|
||||||
|
|
||||||
|
https://www.themoviedb.org/tv/124364-from?language=en-GB
|
||||||
|
```
|
||||||
|
would be
|
||||||
|
```
|
||||||
|
MOVIES:
|
||||||
|
|
||||||
|
`/{provider}/1034541`
|
||||||
|
|
||||||
|
TVSHOWS :
|
||||||
|
|
||||||
|
`/{provider}/124364?s=1&e=1` (s - Season / e - Episode)
|
||||||
```
|
```
|
||||||
|
|
||||||
### EXAMPLE SHOW
|
## Providers
|
||||||
|
|
||||||
|
The providers are currently :
|
||||||
|
|
||||||
```
|
```
|
||||||
https://your-vercel-domain/vidsrc/1429?s=1&e=1
|
vidsrc
|
||||||
|
asiaheroku
|
||||||
```
|
```
|
||||||
|
|
||||||
### Vercel
|
## Example Movie
|
||||||
Host your own instance of vidsrc-api on Vercel using the button below.
|
```
|
||||||
|
https://your-domain/vidsrc/916224
|
||||||
|
```
|
||||||
|
|
||||||
|
## Example Show
|
||||||
|
```
|
||||||
|
https://your-domain/asiaheroku/1429?s=1&e=1
|
||||||
|
```
|
||||||
|
|
||||||
|
## Deployment
|
||||||
|
|
||||||
|
You can self host by doing the following :
|
||||||
|
|
||||||
|
1. `git clone https://github.com/Inside4ndroid/vidsrc-api-js.git`
|
||||||
|
2. `cd vidsrc-api-js`
|
||||||
|
3. `npm install`
|
||||||
|
4. `npm run main`
|
||||||
|
|
||||||
|
or you can deploy to vercel using the button below:
|
||||||
|
|
||||||
[](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2FInside4ndroid%2Fvidsrc-api-js)
|
[](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2FInside4ndroid%2Fvidsrc-api-js)
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import express from "express";
|
import express from "express";
|
||||||
import { getvmovie } from "./src/vidsrcpro.js";
|
import { getvidsrc } from "./src/vidsrcpro.js";
|
||||||
|
import { getasiaheroku } from "./src/asiaheroku.js";
|
||||||
|
|
||||||
const port = 3000;
|
const port = 3000;
|
||||||
|
|
||||||
@@ -23,10 +24,29 @@ app.get('/vidsrc/:tmdbId', async (req, res) => {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
if (season && episode) {
|
if (season && episode) {
|
||||||
const vidsrcresponse = await getvmovie(id, season, episode);
|
const vidsrcresponse = await getvidsrc(id, season, episode);
|
||||||
res.status(200).json(vidsrcresponse);
|
res.status(200).json(vidsrcresponse);
|
||||||
} else {
|
} else {
|
||||||
const vidsrcresponse = await getvmovie(id);
|
const vidsrcresponse = await getvidsrc(id);
|
||||||
|
res.status(200).json(vidsrcresponse);
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
console.error('Error fetching data:', error);
|
||||||
|
res.status(500).json({ error: 'Failed to fetch data' });
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
app.get('/asiaheroku/:tmdbId', async (req, res) => {
|
||||||
|
const id = req.params.tmdbId;
|
||||||
|
const season = req.query.s;
|
||||||
|
const episode = req.query.e;
|
||||||
|
|
||||||
|
try {
|
||||||
|
if (season && episode) {
|
||||||
|
const srcresponse = await getasiaheroku(id, season, episode);
|
||||||
|
res.status(200).json(srcresponse);
|
||||||
|
} else {
|
||||||
|
const vidsrcresponse = await getasiaheroku(id);
|
||||||
res.status(200).json(vidsrcresponse);
|
res.status(200).json(vidsrcresponse);
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
|||||||
@@ -0,0 +1,44 @@
|
|||||||
|
export async function getasiaheroku(tmdb_id, s, e) {
|
||||||
|
const DOMAIN = "https://asia.heroku.uk/";
|
||||||
|
const headers = {
|
||||||
|
'user-agent': "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
|
||||||
|
'Referer': `${DOMAIN}`,
|
||||||
|
'Origin': `${DOMAIN}`,
|
||||||
|
};
|
||||||
|
|
||||||
|
try {
|
||||||
|
let urlSearch = '';
|
||||||
|
|
||||||
|
if(s && e){
|
||||||
|
urlSearch = `${DOMAIN}/embed/tv/${tmdb_id}/${s}/${e}`;
|
||||||
|
} else {
|
||||||
|
urlSearch = `${DOMAIN}/embed/movie/${tmdb_id}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
const htmlSearch = await fetch(urlSearch, {
|
||||||
|
method: 'GET',
|
||||||
|
headers: headers,
|
||||||
|
});
|
||||||
|
const textSearch = await htmlSearch.text();
|
||||||
|
const sourceMatch = textSearch.match(/<source.?src="(.*?)".?type/);
|
||||||
|
const source = sourceMatch ? sourceMatch[1] : "";
|
||||||
|
const results = {
|
||||||
|
headers: {
|
||||||
|
"Referer": `${DOMAIN}`,
|
||||||
|
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
|
||||||
|
"Accept": "*/*"
|
||||||
|
},
|
||||||
|
sources: source,
|
||||||
|
subtitles: 'unsupported'
|
||||||
|
};
|
||||||
|
|
||||||
|
return results;
|
||||||
|
} catch (e) {
|
||||||
|
const results = {
|
||||||
|
headers: {},
|
||||||
|
sources: '',
|
||||||
|
subtitles: ''
|
||||||
|
};
|
||||||
|
return results;
|
||||||
|
}
|
||||||
|
}
|
||||||
+10
-102
@@ -1,10 +1,9 @@
|
|||||||
export async function getvmovie(tmdb_id, s, e) {
|
export async function getvidsrc(tmdb_id, s, e) {
|
||||||
const PROVIDER = 'ZVidsrcPro';
|
|
||||||
const DOMAIN = "https://embed.su";
|
const DOMAIN = "https://embed.su";
|
||||||
const headers = {
|
const headers = {
|
||||||
'user-agent': "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
|
'user-agent': "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
|
||||||
'Referer': "https://embed.su/",
|
'Referer': `${DOMAIN}`,
|
||||||
'Origin': "https://embed.su",
|
'Origin': `${DOMAIN}`,
|
||||||
};
|
};
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@@ -16,8 +15,6 @@ export async function getvmovie(tmdb_id, s, e) {
|
|||||||
urlSearch = `${DOMAIN}/embed/movie/${tmdb_id}`;
|
urlSearch = `${DOMAIN}/embed/movie/${tmdb_id}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
log({ urlSearch: urlSearch }, PROVIDER, 'URLSEARCH');
|
|
||||||
|
|
||||||
const htmlSearch = await fetch(urlSearch, {
|
const htmlSearch = await fetch(urlSearch, {
|
||||||
method: 'GET',
|
method: 'GET',
|
||||||
headers: headers,
|
headers: headers,
|
||||||
@@ -78,7 +75,7 @@ export async function getvmovie(tmdb_id, s, e) {
|
|||||||
|
|
||||||
const requestDirectSize = await fetch(dataDirect.source, {
|
const requestDirectSize = await fetch(dataDirect.source, {
|
||||||
headers: {
|
headers: {
|
||||||
"Referer": "https://embed.su/",
|
"Referer": `${DOMAIN}`,
|
||||||
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
|
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
|
||||||
"Accept": "*/*"
|
"Accept": "*/*"
|
||||||
},
|
},
|
||||||
@@ -131,14 +128,15 @@ export async function getvmovie(tmdb_id, s, e) {
|
|||||||
return results;
|
return results;
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
log({ e: e }, PROVIDER, "ERROR");
|
const results = {
|
||||||
|
headers: {},
|
||||||
|
sources: '',
|
||||||
|
subtitles: ''
|
||||||
|
};
|
||||||
|
return results;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function log(data, prefix, subfix) {
|
|
||||||
console.log(data, "----- ".concat(prefix, " ").concat(subfix, " ----"));
|
|
||||||
};
|
|
||||||
|
|
||||||
async function string_atob(input) {
|
async function string_atob(input) {
|
||||||
var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
|
var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
|
||||||
var str = input.replace(/=+$/, '');
|
var str = input.replace(/=+$/, '');
|
||||||
@@ -156,10 +154,6 @@ async function string_atob(input) {
|
|||||||
async function request_get(url, headers = {}) {
|
async function request_get(url, headers = {}) {
|
||||||
try {
|
try {
|
||||||
headers = headers || {};
|
headers = headers || {};
|
||||||
if (!headers['user-agent']) {
|
|
||||||
headers['user-agent'] = getRandomUserAgent();
|
|
||||||
}
|
|
||||||
|
|
||||||
const response = await fetch(url, {
|
const response = await fetch(url, {
|
||||||
method: 'GET',
|
method: 'GET',
|
||||||
headers: headers,
|
headers: headers,
|
||||||
@@ -176,89 +170,3 @@ async function request_get(url, headers = {}) {
|
|||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function getRandomUserAgent() {
|
|
||||||
var userAgent = [
|
|
||||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.82 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.101 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.101 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.101 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.59 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.59 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.59 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.59 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.59 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.59 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.59 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.59 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.59 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.59 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.110 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.81 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.113 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.89 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.89 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.89 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.89 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.89 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.89 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36",
|
|
||||||
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.98 Safari/537.36"
|
|
||||||
];
|
|
||||||
var random = _.random(0, userAgent.length - 1);
|
|
||||||
return userAgent[random];
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user