我有一个程序,可以使用beautifulsoup打开一长串网页,并从中提取数据。
显然它很慢,因为它必须等待每一个完成。我想让它一次检索多个,以加快速度。
我知道python中的多线程很多次,比使用单线程慢。 什么是最好的?多线程或创建多处理?
答案 0 :(得分:1)
这是使用scrapy的主要原因之一,scrapy建立在扭曲的库上,使http调用异步无使用多线程和多处理
从一开始就可以成为优秀的scrapy tutorial
还值得注意的是,在多核环境中进行大量cpu计算时,多线程/处理通常是正确的方法,但是当涉及并行IO操作时,最好选择异步编程解决方案,而不是让线程在阻塞中等待在保留系统资源的同时执行某些IO的操作。