<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      # -*- coding:utf-8 -*-
      import sys
      import os
      from glob import glob
      import requests


      reload(sys)
      sys.setdefaultencoding("utf-8")
      file_path=os.getcwd()
      #獲取需要轉(zhuǎn)換的路徑
      def get_user_path(argv_dir):
      if os.path.isdir(argv_dir):
      return argv_dir
      elif os.path.isabs(argv_dir):
      return argv_dir
      else:
      return False
      #對(duì)轉(zhuǎn)換的TS文件進(jìn)行排序
      def get_sorted_ts(user_path):

      ts_list = glob(os.path.join(user_path,'*.ts'))

      boxer = []
      for ts in ts_list:

      if os.path.exists(ts):
      # print(os.path.splitext(os.path.basename(ts)))
      file,_ = os.path.splitext(os.path.basename(ts))
      print file
      boxer.append(file)
      # boxer.append(int(file))
      boxer.sort()
      print(boxer)
      return boxer
      #文件合并
      def convert_m3u8(file_path,boxer,o_file_name):
      print u"開始拼接視頻"

      new_path=file_path+"/"+u"視頻"
      try:
      os.chdir(new_path)
      except Exception, e:
      os.mkdir(new_path)
      tmp = []
      for ts in boxer:
      print ts
      tmp.append(str(ts)+'.ts')
      cmd_str = '+'.join(tmp)
      exec_str = "copy /b "+cmd_str+' '+o_file_name
      print("copy /b "+cmd_str+' '+o_file_name)
      os.chdir(user_path)
      os.system(exec_str)
      print "go home path"
      import shutil
      shutil.move(o_file_name,new_path+"/"+o_file_name)
      os.chdir(file_path)

       

       


      reload(sys)
      sys.setdefaultencoding('utf-8')

      # 功能:爬取m3u8格式的視頻

      # 檢查存儲(chǔ)路徑是否正常
      def check_path(_path):
      # 判斷存儲(chǔ)路徑是否存在
      if os.path.isdir(_path) or os.path.isabs(_path):
      # 判斷存儲(chǔ)路徑是否為空
      if not os.listdir(_path):
      return _path

      else:

      print u'>>>[-] 目標(biāo)文件不為空,將清空目標(biāo)文件,是否更換路徑?'
      flag = raw_input('>>>[*] Yes:1 No:2 \n>>>[+] [2]')

      try:
      if flag == '1':
      _path = raw_input(unicode('>>>[+] 請(qǐng)輸入目標(biāo)文件路徑。\n>>>[+] ').encode('gbk'))
      check_path(_path)
      else:
      # 清空存儲(chǔ)路徑
      os.system('rd /S /Q ' + _path)
      os.system('mkdir ' + _path)
      return _path
      except Exception as e:
      print e
      exit(0)

      else:
      os.makedirs(_path)
      return _path

      # 獲取ts視頻的爬取位置
      def get_url(_url, _path):

      all_url = _url.split('/')
      url_pre = '/'.join(all_url[:-1]) + '/'
      url_next = all_url[-1]

      os.chdir(_path)
      # 獲取m3u8文件
      m3u8_txt = requests.get(_url, headers = {'Connection':'close'})
      with open(url_next, 'wb') as m3u8_content:
      m3u8_content.write(m3u8_txt.content)
      # 提取ts視頻的url
      movies_url = []
      _urls = open(url_next, 'rb')
      for line in _urls.readlines():
      if '.ts' in line:
      movies_url.append(url_pre + line[:-1])
      else:
      continue

      _urls.close()
      return movies_url

      # 爬取ts視頻
      def download_movie(num,movie_url, _path):
      os.chdir(_path)
      print u'>>>[+] 第{}個(gè)視頻 downloading...'.format(num)
      print '-' * 60
      error_get = []

      for _url in movie_url:

      # ts視頻的名稱
      movie_name = _url.split('/')[-1][-6:]
      movie_name1 = _url.split('_')[-1][-6:]
      # print movie_name2
      if len(str(movie_name1))<=4:
      movie_name1="00"+str(movie_name1)
      elif len(str(movie_name1))<=5:
      movie_name1="0"+str(movie_name1)
      else :
      movie_name1=str(movie_name1)

      try:
      # 'Connection':'close' 防止請(qǐng)求端口占用
      # timeout=30 防止請(qǐng)求時(shí)間超長連接
      movie = requests.get(_url, headers = {'Connection':'close'}, timeout=60)
      with open(movie_name1, 'wb') as movie_content:
      movie_content.writelines(movie)
      print u'>>>[+] 視頻片段 ' + movie_name1 + u' 下載完成'
      # 捕獲異常,記錄失敗請(qǐng)求
      except:
      error_get.append(_url)
      continue
      # 如果沒有不成功的請(qǐng)求就結(jié)束
      if error_get:
      print u'共有%d個(gè)請(qǐng)求失敗' % len(file_list)
      print '-' * 60
      download_movie(error_get, _path)
      else:
      print '>>>[+] Download successfully!!!'

      url=["http://video.renrenjiang.cn/record/alilive/7684990805-1512186274.m3u8"]

      if __name__ == '__main__':
      try:

      # _url = raw_input(unicode('>>>[+] 請(qǐng)輸入指定的[.m3u8]目標(biāo)URL。\n>>>[+] ').encode('gbk'))
      # _path = raw_input(unicode('>>>[+] 請(qǐng)輸入存儲(chǔ)目標(biāo)文件路徑。\n>>>[+] ').encode('gbk'))
      for i in range(len(url)):
      _url=url[i]
      _path=os.getcwd()+"/"+"ts"+str(i+5)
      try:
      os.chdir(_path)
      except Exception, e:
      os.mkdir(_path)
      storage_path = check_path(_path)
      movie_url = get_url(_url, storage_path)
      download_movie(i+1,movie_url, storage_path)#下載視頻
      user_path =_path
      o_file_name=str(i+5)+".mp4"
      boxer = get_sorted_ts(user_path)
      convert_m3u8(file_path,boxer,o_file_name)#拼接視頻

      except Exception as e:
      print e

      posted on 2017-12-13 10:19  許成志  閱讀(17288)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 共和县| 久久精品国产91久久麻豆| 波多野结衣高清一区二区三区 | 久久96热在精品国产高清| 无码日韩精品一区二区人妻 | 亚洲色大成网站WWW永久麻豆| 亚洲综合中文字幕第一页| 国产精品人妻中文字幕| 亚洲一区成人在线视频| 无码中文字幕热热久久| 久热久热免费在线观视频| 18禁无遮拦无码国产在线播放| 国产一卡2卡三卡4卡免费网站| 类乌齐县| 91老肥熟女九色老女人| 99久久国产综合精品成人影院| 毛片av在线尤物一区二区| 国产成人高清亚洲一区91| 亚洲男人的天堂av手机在线观看| 日本美女性亚洲精品黄色| 又粗又硬又黄a级毛片| 国产精品天天在线午夜更新 | 日韩有码中文字幕国产| 亚洲国产精品一区二区视频| 成人无码午夜在线观看| 人妻中出无码中字在线| 亚洲欧美国产日韩天堂区| 成A人片亚洲日本久久| 内射干少妇亚洲69XXX| 亚洲av本道一区二区| 亚洲日韩性欧美中文字幕| 国产97色在线 | 免费| 午夜欧美精品久久久久久久| 日韩一区在线中文字幕| 少妇被躁爽到高潮| av无码精品一区二区乱子| 中文字幕无码久久精品| 久热这里只有精品12| 熟女一区二区中文在线| 毛片无遮挡高清免费| 久久这里都是精品一区|