mirror of
https://github.com/yt-dlp/yt-dlp.git
synced 2024-11-15 04:43:19 +00:00
Move duplicate check to generic.py
This commit is contained in:
parent
610134730a
commit
37e3cbe22e
|
@ -343,16 +343,6 @@ def url_result(url, ie=None, video_id=None):
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def playlist_result(entries, playlist_id=None, playlist_title=None):
|
def playlist_result(entries, playlist_id=None, playlist_title=None):
|
||||||
"""Returns a playlist"""
|
"""Returns a playlist"""
|
||||||
# Ensure we don't have any duplicates in the playlist
|
|
||||||
seen = set()
|
|
||||||
new_list = []
|
|
||||||
for url in entries:
|
|
||||||
theurl = tuple(url.items())
|
|
||||||
if theurl not in seen:
|
|
||||||
seen.add(theurl)
|
|
||||||
new_list.append(url)
|
|
||||||
entries = new_list
|
|
||||||
|
|
||||||
video_info = {'_type': 'playlist',
|
video_info = {'_type': 'playlist',
|
||||||
'entries': entries}
|
'entries': entries}
|
||||||
if playlist_id:
|
if playlist_id:
|
||||||
|
|
|
@ -494,6 +494,14 @@ def _real_extract(self, url):
|
||||||
if matches:
|
if matches:
|
||||||
urlrs = [self.url_result(unescapeHTML(tuppl[1]), 'Youtube')
|
urlrs = [self.url_result(unescapeHTML(tuppl[1]), 'Youtube')
|
||||||
for tuppl in matches]
|
for tuppl in matches]
|
||||||
|
# First, ensure we have a duplicate free list of entries
|
||||||
|
seen = set()
|
||||||
|
new_list = []
|
||||||
|
theurl = tuple(url.items())
|
||||||
|
if theurl not in seen:
|
||||||
|
seen.add(theurl)
|
||||||
|
new_list.append(url)
|
||||||
|
urlrs = new_list
|
||||||
return self.playlist_result(
|
return self.playlist_result(
|
||||||
urlrs, playlist_id=video_id, playlist_title=video_title)
|
urlrs, playlist_id=video_id, playlist_title=video_title)
|
||||||
|
|
||||||
|
@ -503,6 +511,14 @@ def _real_extract(self, url):
|
||||||
if matches:
|
if matches:
|
||||||
urlrs = [self.url_result(unescapeHTML(tuppl[1]))
|
urlrs = [self.url_result(unescapeHTML(tuppl[1]))
|
||||||
for tuppl in matches]
|
for tuppl in matches]
|
||||||
|
# First, ensure we have a duplicate free list of entries
|
||||||
|
seen = set()
|
||||||
|
new_list = []
|
||||||
|
theurl = tuple(url.items())
|
||||||
|
if theurl not in seen:
|
||||||
|
seen.add(theurl)
|
||||||
|
new_list.append(url)
|
||||||
|
urlrs = new_list
|
||||||
return self.playlist_result(
|
return self.playlist_result(
|
||||||
urlrs, playlist_id=video_id, playlist_title=video_title)
|
urlrs, playlist_id=video_id, playlist_title=video_title)
|
||||||
|
|
||||||
|
@ -615,6 +631,14 @@ def _real_extract(self, url):
|
||||||
if matches:
|
if matches:
|
||||||
urlrs = [self.url_result(unescapeHTML(eurl), 'FunnyOrDie')
|
urlrs = [self.url_result(unescapeHTML(eurl), 'FunnyOrDie')
|
||||||
for eurl in matches]
|
for eurl in matches]
|
||||||
|
# First, ensure we have a duplicate free list of entries
|
||||||
|
seen = set()
|
||||||
|
new_list = []
|
||||||
|
theurl = tuple(url.items())
|
||||||
|
if theurl not in seen:
|
||||||
|
seen.add(theurl)
|
||||||
|
new_list.append(url)
|
||||||
|
urlrs = new_list
|
||||||
return self.playlist_result(
|
return self.playlist_result(
|
||||||
urlrs, playlist_id=video_id, playlist_title=video_title)
|
urlrs, playlist_id=video_id, playlist_title=video_title)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue