je suis en train d'écrire une araignée avec multitraitement ModuleModule Python multitraitement ne fonctionne pas
voici mon code python:
# -*- coding:utf-8 -*-
import multiprocessing
import requests
class SpiderWorker(object):
def __init__(self, q):
self._q = q
def run(self):
def _crawl_item(url):
requests.get("http://www.baidu.com")
if respon.ok:
print respon.url
while True:
rst = self._q.get()
_crawl_item(rst)
def general_worker():
q = multiprocessing.Queue()
CPU_COUNT = multiprocessing.cpu_count()
worker_processes = [
multiprocessing.Process(target=SpiderWorker(q).run)
for i in range(CPU_COUNT)
]
map(lambda process: process.start(), worker_processes)
return q, worker_processes
peut-être est ma mauvaise façon à chaque fois de processus je cours ce code, mon processus me dire
<Process(Process-1, stopped[SIGSEGV])>
espoir aimer
Désolé de harceler, mais cinq jours se sont écoulés et il n'y a aucune réaction de votre part. Avez-vous réussi à résoudre le problème vous-même? Si non, alors avez-vous identifié la raison réelle pour laquelle vos processus échouent? – Lav