测试积点老人 发表于 2021-10-18 10:21:46

关于爬取电影过程中,下载步骤报错的问题?

问题具体就是:在爬取一个网站的过程中,进程是已经爬取到了视频的m3u8文件;准备对文件里面的每一段m3u8文件链接进行下载,写完下载流程后开始报错,望指教?问题截图:以下为代码块,只放出来出问题部分的函数#2.5.1、子程序:异步协程进行下载
async def download_ts(url,name,session):
    async with session.get(url)as resp:
      async with aiofiles.open(f'4.9-video2/{name}',mode='wb')as f:
            await f.write(await resp.content.read())#把下载到的内容写入文件中
    print(f'{name}下载完毕')

#2.5、子程序:异步协程处理下载
async def aio_download(up_url):
    tasks=[]
    async with aiohttp.ClientSession() as session:
      async with aiofiles.open('4.93-抓取91看剧复杂版——second-m3u8.txt',mode='r',encoding='utf-8')as f:
            async for line in f:
                if line.startswith('#'):#’#‘开头的行不要
                  continue
                # line就是xxxx.ts文件
                url = line.strip()# 去掉没用的空格和换行
                name=line.rsplit('/',1)
                task=asyncio.create_task(download_ts(url,name,session))
                tasks.append(task)
            await asyncio.wait(tasks)#等待任务结束

#主程序
def main(url):
    #2.1、找到主页面的源代码,找到iframe对应的url
    iframe_src=get_iframe_src(url)
    #print(iframe_src)
    #2.3下载第一层m3u8文件
    download_m3u8_file(iframe_src,'4.93-抓取91看剧复杂版——first-m3u8.txt')#按照课程正常的话括号里的’iframe_src‘要改为2.2里的’first_m3u8_url_ture‘
    #2.4下载第二层m3u8文件
    with open('4.93-抓取91看剧复杂版——first-m3u8.txt',mode='r',encoding='utf-8') as f:
      for line in f:
            if line.startswith('#'):#让程序识别文件里面时,自动跳过‘#’开头的行段
                continue
            else:
                line=line.strip()#去掉空白或者换行符
                #准备拼接第二层m3u8的下载路径
                second_m3u8_url=iframe_src.split('/20210730')+line
                download_m3u8_file(second_m3u8_url,'4.93-抓取91看剧复杂版——second-m3u8.txt')
                print('第二层m3u8下载完毕')

    #2.5下载视频
    up_url='开始'
    asyncio.run(aio_download(up_url))

#1、主程序调用处
if __name__=='__main__':
    url='https://www.pianba.net/yun/84961-1-1/'
    main(url)

海海豚 发表于 2021-10-19 09:16:02

非法参数

qqq911 发表于 2021-10-19 10:53:43

应该是有防爬机制的

jingzizx 发表于 2021-10-19 15:47:22

看着是参数保持,可以对比一下看看

litingting0214 发表于 2021-10-19 16:04:38

人家网站设置了防爬机制了吧
页: [1]
查看完整版本: 关于爬取电影过程中,下载步骤报错的问题?