Собственно вопрос. Потоки в питоне работают шустро, но вот как нормально вернуть значение из него я не нашел. Вот пример кода:
import requests
import random
import re
import queue
pattern = 'http://www.astateoftrance.com/episodes/episode-'
k = 700
lock = threading.Lock()
def getPage():
#print ("Hello")
global k
while (k < 800):
url = pattern+str(k)+'/'
response = requests.get(url)
content = response.content.decode('utf-8')
contLow = content.lower()
#print(contLow)
if (re.findall('', contLow)):
print(url)
lock.acquire()
k = k + 1
lock.release()
threads = []
for i in range(20):
t = threading.Thread(target=getPage)
threads.append(t)
t.start()
Где-то предлагают использовать вместо threading multiprocessing, кто-то советует переопределить класс потока так чтобы он возвращал значение. Разве нет более прямого пути получить из потока значение? Или нужно обязательно использовать вспомагательное решение?