如何使用Python實現多進程編程?

請問各位知友,如何在Python下實現多進程編程?

求各位知友推薦一些好的資料,謝謝~~

PS:

現有一個腳本,用來爬取京東某一個商品前100頁的評論。

如果我把這個腳本,拆成2個,第一個爬前50頁,第二個爬後50頁。

兩個腳本在同一台電腦下運行。

請問各位知友,這種「粗暴」的方法,算是多進程嗎?

----

謝謝每一位認真回復的知友!!~

發兩張收藏的手機壁紙,希望大家喜歡~~


拿 concurrent.futures 弄就可以了。multiprocessing 主打計算的。

Python 2.x 的話,裝 futures 這個庫。



對於I/O密集運算的,一般用多線程或協程。多進程一般用在cpu密集運算方面。

爬100頁,用單線程夠了吧,爬取頻率太高,會被禁止訪問的。

用multiprocessing 進程池。

https://docs.python.org/2/library/multiprocessing.html

from multiprocessing import Pool

def f(x):
return x*x

if __name__ == "__main__":
p = Pool(5)
print(p.map(f, [1, 2, 3]))


你這是io bound的,直接多線程就完了,跑不滿的


推薦閱讀:

現在學完Python的就業形勢怎麼樣?
有沒有什麼值得推薦的輕量級Python IDE?
Python中 交換整個字典的鍵與值 最快和最簡潔的方法分別是什麼?
什麼時候會用到python裝飾器?
python如何恰當的判斷多個值是否在list中?

TAG:Python | 編程 | Python框架 | 多線程編程 | Python開發 |