Bagaimana untuk meningkatkan kecekapan penghuraian crawler python?
世界只因有你
世界只因有你 2017-06-12 09:20:36
0
3
757

Kini kami menggunakan rangkak berbilang benang dalam persekitaran tingkap,
gunakan beautifulsoup+lxml untuk menghurai.

N merangkak benang->menghuraikan baris gilir->1 menghuraikan benang->menyimpan baris gilir->1 storan benang

Kecekapan keseluruhan program pelaksanaan tersekat dalam utas penghuraian intensif secara pengiraan Jika anda hanya menambah bilangan utas penghuraian, ia akan meningkatkan penukaran benang di atas dan memperlahankan kelajuan.

Maaf, adakah terdapat cara untuk meningkatkan kecekapan penghuraian dengan ketara?

Mengikut arahan dua paha, sediakan untuk menggunakan
Merangkak tak segerak->Baris gilir menghurai->N proses penghuraian->Baris gilir storan->Benang storan

Bersedia untuk memulakan pembinaan

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

membalas semua(3)
为情所困

Sebenarnya, saya rasa awak tulis semula duluN个爬取线程 可以换成协程/线程池实现, 因为你在频繁创建线程本省一种性能耗费, 用线程池虽然可以减少这部分的损耗, 但是上下文切换还是无法避免, 所以协程这方面, 应该是比较合适的.
1个解析线程 换成 进程池,多开几个进程去计算密集处理, 其余应该可以不用改, 如果还想再搞, 将核心部分用c/c++, saya harap ia dapat membantu awak

刘奇

Pendekatan saya adalah pelbagai proses. Kelebihan berbilang proses ialah apabila prestasi mesin tunggal tidak mencukupi, anda boleh bertukar kepada perangkak teragih pada bila-bila masa.

淡淡烟草味

Anda boleh mencari perangkak tak segerak tornade dalam talian, saya menggunakan ini

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan