@amirkhonov

Как обработать информацию с помощью threading по очереди в Python?

Здравствуйте!
Есть список list со ссылками на страницы (около 50 тыс. страниц), которых нужно обработать с pyquery и добавить результаты в список results. Однако задача выполняется очень долго. Пробовал некоторые модули, но они не обрабатывают по очереди. Как правильно выполнять нижеуказанный код с помощью threading, чтобы результаты из обработанных страниц добавлялись по очереди в список results?

results = []
list      = ['url1', 'url2', ....]

for j in list:
    try:
        jopen = urllib2.urlopen(j)
        versions = jopen.read() # get tags/versions page
        version = pq(versions)          # send content to pyquery pq
        ....... # обработка с pyquery
        results.append(version)
    except urllib2.URLError:
        results.append('0.0')
    except urllib2.HTTPError:
        results.append('0.0')


Спасибо за помощь.
  • Вопрос задан
  • 183 просмотра
Пригласить эксперта
Ответы на вопрос 1
dimonchik2013
@dimonchik2013
non progredi est regredi
МултиКурл
python2or3.blogspot.com/2015/05/python-multi-curl.html

если стоит задача скачивать, проще всего

можно и так
toly.github.io/blog/2014/02/13/parallelism-in-one-line

но курл быстрее и ненагруженнее невероятно
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы