国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

python 爬蟲 解析效率如何提升?
世界只因有你
世界只因有你 2017-06-12 09:20:36
0
3
863

現(xiàn)在采用的是在windows 環(huán)境下 采用多線程的方式進行爬取,
使用beautifulsoup+lxml進行解析.

N個爬取線程->解析隊列->1個解析線程->存儲隊列->1個存儲線程

整個執(zhí)行程序的效率卡在計算密集的解析線程中,如果只是增加解析線程數(shù)量的話,反而增加線程切換開銷速度變慢。

請問下 有什么辦法可以較為明顯的提升解析效率?

根據(jù)兩位大腿的說明 準備采用
異步爬取->解析隊列->N個解析進程->存儲隊列->存儲線程

準備開工

世界只因有你
世界只因有你

全部回復(3)
為情所困

其實我覺得, 你在前面N個爬取線程 可以換成協(xié)程/線程池實現(xiàn), 因為你在頻繁創(chuàng)建線程本省一種性能耗費, 用線程池雖然可以減少這部分的損耗, 但是上下文切換還是無法避免, 所以協(xié)程這方面, 應(yīng)該是比較合適的.
1個解析線程 換成 進程池,多開幾個進程去計算密集處理, 其余應(yīng)該可以不用改, 如果還想再搞, 將核心部分用c/c++ 重寫咯, 希望可以幫到你

劉奇

我的做法是多進程。多進程的好處是當單機性能不夠的時候,可以隨時切換為分布式爬蟲。

淡淡煙草味

可以網(wǎng)上找下tornade異步爬蟲吧,我正在用這個

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板