Skip to content

Latest commit

 

History

History
289 lines (253 loc) · 10 KB

dramacool.md

File metadata and controls

289 lines (253 loc) · 10 KB

DramaCool

const dramacool = new MOVIES.DramaCool();

Methods

search

Note: This method is a subclass of the BaseParser class. meaning it is available across most categories.

Parameters

Parameter Type Description
query string query to search for. (In this case, We're searching for Vincenzo)
page (optional) number page number (default: 1)
dramacool.search("Vincenzo").then(data => {
  console.log(data);
})

returns a promise which resolves into an array of movies/tv series. (Promise<ISearch<IMovieResult[]>>)
output:

{
  currentPage: 1, // current page number
  totalPages: 1,
  hasNextPage: false, // boolean to indicate if there's a next page
  results: [
    {
      id: 'drama-detail/vincenzo', // media id
      title: 'Vincenzo (2021)',
      url: 'https://dramacool.com.pa/drama-detail/vincenzo',
      image: 'https://asianimg.pro/cover/vincenzo.png'
    }
  ]
}

fetchMediaInfo

Parameters

Parameter Type Description
mediaId string takes media id or url as a parameter. (media id or url can be found in the media search results as shown on the above method)
dramacool.fetchMediaInfo("drama-detail/vincenzo").then(data => {
  console.log(data);
})

returns a promise which resolves into an anime info object (including the episodes). (Promise<IMovieInfo>)
output:

{
  id: 'drama-detail/vincenzo',
  title: 'Vincenzo (2021)',
  status: 'Completed',
  genres: ['Comedy', 'Crime','Drama',...],
  otherNames: [ '빈센조', 'Binsenjo' ],
  image: 'https://asianimg.pro/cover/vincenzo.png',
  description: 'At the age of 8, Park Ju Hyeong is adopted and sent off to Italy.  Now an adult, he is known as Vincenzo Casano.',
  releaseDate: '2021',
  contentRating: '',
  airsOn: '',
  director: 'kim hee won [김희원]',
  originalNetwork: 'netflix; tvn',
  trailer: {
    url: 'https://www.youtube.com/embed/vO8rFbTtJNI',
    id: 'vO8rFbTtJNI'
  },
  characters: [
    {
      url: 'https://dramacool.com.pa/star/ok-taecyeon',
      imageUrl: 'https://asianimg.pro/star/ok-taecyeon.png',
      title: 'Ok Taecyeon (1988)'
    },
    {...},
      ...
  ],
  episodes: [
   {
      id: 'vincenzo-2021-episode-1',
      title: 'Episode 1',
      episode: 1,
      subType: 'SUB',
      releaseDate: '2021-02-20 07:17:21',
      url: 'https://dramacool.com.pa/vincenzo-2021-episode-1.html'
    },
    {...},
    ...
  ]
}

fetchEpisodeSources

Parameters

Parameter Type Description
episodeId string takes episode id as a parameter. (episode id can be found in the media info object)
server (optional) StreamingServers takes server enum as a parameter. default: StreamingServers.AsianLoad
dramacool.fetchEpisodeSources("vincenzo-2021-episode-1").then(data => {
  console.log(data);
})

returns a promise which resolves into an array of episode sources and subtitles. (Promise<ISource>)
output:

{
  sources: [
    {
      url: 'https://hls017.vipdracdn.net/streamhls2024/db287e9dc37d8c5b67c2498e3ef07c5a/ep.1.v0.1678048676.m3u8',
      isM3U8: true
    },
    {
      url: 'https://hls017.drafastcdn.pro/newvideos/newhls/sfRdQu0XQEJlsVGMH1S5nA/1721846640/230926_202.179.72.206/db287e9dc37d8c5b67c2498e3ef07c5a/ep.1.v0.1678048676.m3u8',
      isM3U8: true
    }
  ],
  subtitles: [
    {
      url: 'https://asiancdn.com/images/db287e9dc37d8c5b67c2498e3ef07c5a/1.vtt',
      lang: 'Default (maybe)'
    }
  ],
  download: 'https://asianbxkiun.pro/download?id=MjMwOTI2&title=Vincenzo+%282021%29+episode+1&typesub=SUB' //only for AsianLoad
}

fetchEpisodeServers

Parameters

Parameter Type Description
episodeId string take an episode id or url as a parameter. (episode id or episode url can be found in the media info object)
dramacool.fetchEpisodeServers("vincenzo-2021-episode-1").then(data => {
  console.log(data);
})

returns a promise which resolves into an array of episode servers. (Promise<IEpisodeServer[]>)
output:

[
  {
    name: 'asianload',
    url: 'https://plcool1.com/pl454545?id=MjMwOTI2&title=Vincenzo+%282021%29+episode+1&typesub=SUB'
  },
  {
    name: 'kvid',
    url: 'https://plcool1.com/embedplus?id=MjMwOTI2&token=SGWtnrSwuIw3RsQGPe5tRg&expires=1721846948'
  },
  { name: 'asianstream', url: '7YE2aUb7PNVD3bY8NDIYqg' },
  { name: 'streamwish', url: 'https://dwish.pro/e/dr1qk2hew1v8' },
  {
    name: 'streamtape',
    url: 'https://streamtape.com/e/plglOyRJPaTrOGP/vincenzo-2021-episode-1.mp4'
  },
  { name: 'doodstream', url: 'https://dood.wf/e/zh9uj55c901a' },
  { name: 'vidhide', url: 'https://dlions.pro/v/7thb1yedp816' }
]

(back to movie providers list)

fetchPopular

dramacool.fetchPopular.then(data => {
  console.log(data);
})

returns a promise which resolves into an array of movies. (Promise<ISearch<IMovieResult>>)
output:

{
  currentPage: 1,
  totalPages: 741,
  hasNextPage: true,
  results: [
    {
      id: 'drama-detail/is-it-fate',
      title: "Serendipity's Embrace (2024)",
      url: 'https://dramacool.com.pa/drama-detail/is-it-fate',
      image: 'https://asianimg.pro/cover/is-it-fate-1719896631.png'
    },
    {
      id: 'drama-detail/open-murder-contract',
      title: 'No Way Out: The Roulette (2024)',
      url: 'https://dramacool.com.pa/drama-detail/open-murder-contract',
      image: 'https://asianimg.pro/cover/open-murder-contract-1720405656.png'
    },
    {...}
  ]
}

fetchRecentMovies

dramacool.fetchRecentMovies.then(data => {
  console.log(data);
})

returns a promise which resolves into an array of movies. (Promise<ISearch<IMovieResult>>)
output:

{
  currentPage: 1,
  totalPages: 207,
  hasNextPage: true,
  results: [
    {
      id: 'drama-detail/cross-',
      title: 'Mission Cross (2024)',
      url: 'https://dramacool.com.pa/mission-cross-2024-episode-1.html',
      image: 'https://asianimg.pro/cover/cross--1723170340.png'
    },
    {
      id: 'drama-detail/mentalese-express-2023',
      title: 'Mentalese Express (2023)',
      url: 'https://dramacool.com.pa/mentalese-express-2023-episode-1.html',
      image: 'https://asianimg.pro/cover/mentalese-express-2023-1723173905.png'
    },
    {...}
  ]
}

fetchRecentTvShows

dramacool.fetchRecentTvShows.then(data => {
  console.log(data);
})

returns a promise which resolves into an array of movies. (Promise<ISearch<IMovieResult>>)
output:

{
  currentPage: 1,
  totalPages: 376,
  hasNextPage: true,
  results: [
    {
      id: 'drama-detail/kimi-to-yukite-saku-shinsengumi-seishunroku',
      title: 'Kimi to Yukite Saku: Shinsengumi Seishunroku (2024)',
      url: 'https://dramacool.com.pa/kimi-to-yukite-saku-shinsengumi-seishunroku-2024-episode-12.html',
      image: 'https://asianimg.pro/cover/kimi-to-yukite-saku-shinsengumi-seishunroku-1711089348.png',
      episodeNumber: '12'
    },
    {
      id: 'drama-detail/ayaka-chan-wa-hiroko-senpai-ni-koishiteru',
      title: 'Ayaka-chan wa Hiroko-senpai ni Koishiteru (2024)',
      url: 'https://dramacool.com.pa/ayaka-chan-wa-hiroko-senpai-ni-koishiteru-2024-episode-6.html',
      image: 'https://asianimg.pro/cover/ayaka-chan-wa-hiroko-senpai-ni-koishiteru-2024-1719580986.png',
      episodeNumber: '6'
    },
    {...}
  ]
}