前面很多人说了第一点,Python的轮子多,你随便调几个函数,换别的语言可能就要写一天了。
我来谈谈第二点,异步处理。Python是使用协程支持异步处理的,这点Java用线程也还好。用c可能就有点痛苦了。
c 或者Java相比Python的优势是什么?计算性能。同样的一段东西,你让c跑到ms可能Python就够吃一壶了。然而我们爬虫获取数据的时候,需要这些性能吗?爬虫是从网络资源上抓取数据。一次请求可能上百ms,甚至数s,数十s。这段时间如果Python你可以轻松的跑下一个请求,把阻塞的IO事件异步处理。这点其实类似的语言不少,go这点比Python还容易。
这时候Python的另外一个优势就展现出来了,强大丰富的文本处理。Python对于文本数据的处理库多的让人无从下手。拿下来的数据在Python处理要容易的多。加之Python脚本语言动态变量,别的语言因为变量类型严谨的优点在爬虫这个场景上反而是个累赘。
所以 Python成为最受欢迎的爬虫语言原因我总结就是以下几点
轮子丰富
并发支持好
文本处理简易
上手容易
优点足够吸引人,缺点并不是问题,有什么理由不用Python?