Python 2.6: параллельный анализ с urllib2 - PullRequest
3 голосов
/ 01 июля 2010

В настоящее время я получаю и анализирую страницы с веб-сайта, используя urllib2.Однако их много (более 1000), и их последовательная обработка мучительно медленная.

Я надеялся, что есть способ извлекать и анализировать страницы параллельно.Если это хорошая идея, возможно ли это и как мне это сделать?

Кроме того, каковы "разумные" значения для количества страниц, обрабатываемых параллельно (я не хотел бы слишком загружать сервер или получать бан, потому что я использую слишком много подключений)?

Спасибо!

1 Ответ

3 голосов
/ 01 июля 2010

Вы всегда можете использовать потоки (т.е. запускать каждую загрузку в отдельном потоке). Для больших чисел это может быть слишком много ресурсов, и в этом случае я рекомендую вам взглянуть на gevent и особенно этот пример , который может быть именно тем, что вам нужно. 1005 *

(с сайта gevent.org: "gevent - сетевая библиотека Python на основе сопрограмм, которая использует greenlet для обеспечения высокоуровневого синхронного API поверх цикла событий libevent")

...