只能爬取文字,不能下载文件 | 执行顺序问题
来源:5-1 session和cookie自动登录机制
慕粉3883702
2022-05-11
bobby老师,您好。
需求是这样的:
一个小众游戏录像网站,想要爬取一些【对局信息简介】(就在页面上显示着)和【对局录像文件】(需点击下载)。
遇到的问题:
当我测试的时候,只给scrapy提交一条url,可以下载简介和录像。
但是,当我提交给scrapy一个url列表,则只能爬取简介,以及最后一个url的录像。
我试着分析了一下原因:
response只保留了一些"死"的信息,但是并没有维持和网页的会话?因此scrapy可以解析出response中的信息,却无法通过response发起下载请求?
那么,bobby老师有什么解决的思路吗?
有什么办法让scrapy一次只发送一条url,处理完爬取网页和下载文件的两个任务之后,再发送下一条url?(而不是像现在这样保存很多死的response)
还是说,下载录像的时候必须要再重新发起一次请求?需要再专门写一个下载录像的parse函数吗?
写回答
1回答
-
bobby
2022-05-12
scrapy本身是一个异步框架, 你这个需求是一个同步抓取需求, 和scrapy本身的底层框架冲突,下载文件和下载视频都是异步的,无法把两者统一起来,要想完成这个功能需要读一下底层的download源码或者自己写这一部分逻辑
022022-05-14
相似问题