im проверка моих клиентов, чтобы я знал, какая услуга я могу предложить bla bla ... , так что проблемами являются блоки потоков, например, он проверяет 15-20 и блокирует, я хочу решение, чтобы он продолжает код:Python threadings: threads block
import requests
import re
from sys import argv
from Queue import Queue
from threading import Thread
e = argv[1]
emails = open(e, 'r').readlines()
emails = map(lambda s: s.strip(), emails)
valid=[]
def base(email):
xo = requests.get("http://www.paypal.com/xclick/business="+email, headers={"User-Agent":"Mozilla/5.0 (Windows NT 5.0; rv:21.0) Gecko/20100101 Firefox/21.0"}).text
x = re.search("s.eVar36=\"(.*?)\";", xo)
try:
if x.group(1) != "":
print "%s === %s" % (email,x.group(1))
w=open(str(x.group(1))+".txt", 'a')
w.write(email+"\n")
valid.append(email)
except:
pass
def work():
email=q.get()
base(email)
q.task_done()
THREADS = 25
q=Queue()
for i in range(THREADS):
t=Thread(target=work())
t.daemon=True
t.start()
if (len(argv)>0):
for email in emails:
q.put(email)
q.join()`enter code here
заранее спасибо
привет мне нужна помощь – script0r
Проверьте эту строку: немогу = Thread (цель = работа()) 'Вы назвали функцию перед созданием потока. Вместо этого вы должны сделать 't = Thread (target = work)'. – tdelaney
Ваш рабочий обрабатывает только одно электронное письмо, которое кажется странным. Подумайте об использовании 'multiprocessing.pool.ThreadPool'. – tdelaney