更新時間:2021年05月21日18時40分 來源:傳智教育 瀏覽次數:
一般情況下,在選擇是使用多進程還是多線程時,主要考慮的業(yè)務到底是IO密集型(多線程)還是計算密集型(多進程)。在爬蟲中,請求的并發(fā)業(yè)務屬于是網絡的IO類型業(yè)務,因此網絡并發(fā)適宜使用多線程;但特殊需求下,比如使用phantomjs 或者chrome-headless來抓取的爬蟲,應當是多進程的,因為每一個phan/chro實例就是一個進程了,并發(fā)只能是多進程。此外爬蟲中還是數據處理業(yè)務,如果數據處理業(yè)務是一個比較耗時的計算型操作,那么對數據處理部分應當設為多進程,但更多可能會考慮將該部分數據處理操作和爬蟲程序解耦,也就是先把數據抓取下來,事后單獨運行另外的程序解析數據。
Python興趣課程,0基礎Python 3天入門課程
·了解Python主流就業(yè)方向,把握最新熱點技術
·掌握Python的基礎語法及API調用
·能夠使用Python對數據獲取、使用和展示
·打造自己的數據分析項目并自動生成工作報告