Change construct method of videoinfo
This commit is contained in:
@@ -1,3 +0,0 @@
|
|||||||
from . videoinfo import VideoInfo
|
|
||||||
def videoinfo(video_id):
|
|
||||||
return VideoInfo(video_id)
|
|
||||||
@@ -1,8 +1,8 @@
|
|||||||
from . import asyncdl
|
from . import asyncdl
|
||||||
from . import parser
|
from . import parser
|
||||||
from . import videoinfo
|
|
||||||
from . block import Block
|
from . block import Block
|
||||||
from . duplcheck import duplicate_head, duplicate_tail, overwrap
|
from . duplcheck import duplicate_head, duplicate_tail, overwrap
|
||||||
|
from . videoinfo import VideoInfo
|
||||||
from .. import config
|
from .. import config
|
||||||
from .. exceptions import InvalidVideoIdException
|
from .. exceptions import InvalidVideoIdException
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ class Downloader:
|
|||||||
def download(video_id, div = 20, callback=None, processor = None):
|
def download(video_id, div = 20, callback=None, processor = None):
|
||||||
duration = 0
|
duration = 0
|
||||||
try:
|
try:
|
||||||
duration = videoinfo(video_id).get("duration")
|
duration = VideoInfo(video_id).get("duration")
|
||||||
except InvalidVideoIdException:
|
except InvalidVideoIdException:
|
||||||
raise
|
raise
|
||||||
if duration == 0:
|
if duration == 0:
|
||||||
|
|||||||
@@ -37,6 +37,41 @@ def check_duplicate(chatdata):
|
|||||||
for i in range(max_range) for j in range(i+1,max_range)
|
for i in range(max_range) for j in range(i+1,max_range)
|
||||||
if is_duplicate(i,j)]
|
if is_duplicate(i,j)]
|
||||||
|
|
||||||
|
|
||||||
|
def check_duplicate_offset(chatdata):
|
||||||
|
max_range = len(chatdata)
|
||||||
|
tbl_offset = [None] * max_range
|
||||||
|
tbl_id = [None] * max_range
|
||||||
|
tbl_type = [None] * max_range
|
||||||
|
|
||||||
|
def create_table(chatdata, max_range):
|
||||||
|
for i in range(max_range):
|
||||||
|
tbl_offset[i] = parser.get_offset(chatdata[i])
|
||||||
|
tbl_id[i] = parser.get_id(chatdata[i])
|
||||||
|
tbl_type[i] = parser.get_type(chatdata[i])
|
||||||
|
|
||||||
|
def is_duplicate(i, j):
|
||||||
|
return (
|
||||||
|
tbl_offset[i] == tbl_offset[j]
|
||||||
|
and
|
||||||
|
tbl_id[i] == tbl_id[j]
|
||||||
|
# and
|
||||||
|
# tbl_type[i] == tbl_type[j]
|
||||||
|
)
|
||||||
|
|
||||||
|
print("creating table...")
|
||||||
|
create_table(chatdata,max_range)
|
||||||
|
print("searching duplicate data...")
|
||||||
|
|
||||||
|
return [{
|
||||||
|
"index" : i, "id" : tbl_id[i],
|
||||||
|
"offsetTime" : tbl_offset[i],
|
||||||
|
"type:" : tbl_type[i]
|
||||||
|
|
||||||
|
}
|
||||||
|
for i in range(max_range-1)
|
||||||
|
if is_duplicate(i,i+1)]
|
||||||
|
|
||||||
def duplicate_head(blocks):
|
def duplicate_head(blocks):
|
||||||
if len(blocks) == 1 : return blocks
|
if len(blocks) == 1 : return blocks
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user