0
我一直在試圖下載與python視頻文件,並在同一時間播放與VLC。下載視頻與python不玩,而加載
我試過幾種方法。其中之一是通過連續獲取並追加數據在單個線程中下載。這種風格很慢,但視頻播放。代碼如下所示
self.fp = open(dest, "w")
while not self.stop_down and _continue: with urllib2 request
try:
size = 1024 * 8
data = page.read(size)
bytld+= size
self.fp.write(data)
此功能需要更長的時間才能下載,但我可以在加載時播放視頻。 但是我一直在努力,同時在多個零件下載..
有了適當的線程邏輯
req= urllib2.Request(self.url)
req.headers['Range'] = 'bytes=%s-%s' % (self.startPos, self.end)
response = urllib2.urlopen(req)
content = response.read()
if os.path.exists(self.dest) :
out_fd = open(self.dest, "r+b")
else :
out_fd = open(self.dest, "w+b")
out_fd.seek(self.startPos, 0)
out_fd.write(content)
out_fd.close()
隨着我的線程,我確保該文件的每一部分都被保存在順序。 但由於某種原因,我無法在下載時播放此文件。
有什麼我不正確的做法嗎? 「範圍」是否應該以不同的方式修改?