Загрузка изображений с нескольких сайтов одновременно с использованием Python - PullRequest
0 голосов
/ 15 июня 2011

Я пытаюсь загрузить несколько изображений одновременно, используя Python через Интернет, и я рассмотрел несколько вариантов, но ни один из них не кажется удовлетворительным.

Я рассмотрел pyCurl, но на самом деле это не такпонять пример кода, и кажется, что это слишком много для такой простой задачи.urlgrabber кажется хорошим выбором, но в документации сказано, что функция пакетной загрузки все еще находится в разработке.Я не могу найти ничего в документации для urllib2.

Есть ли опция, которая действительно работает и ее проще реализовать?Спасибо.

1 Ответ

1 голос
/ 15 июня 2011

Это не необычно, но вы можете использовать urllib.urlretrieve и пул потоков или процессов, выполняющих его.

Поскольку они ожидают сетевого ввода-вывода, вы можете запустить несколько потоков одновременно - вставьтеURL-адреса и имена файлов назначения в Queue.Queue, и каждый поток может их поглотить.

Если вы используете многопроцессорность, это еще проще - просто создайте Pool процессов и вызывайте mypool.map с функциейи повторяемость аргументов.В стандартной библиотеке нет пула потоков, но вы можете получить сторонний модуль, если вам нужно избегать запуска отдельных процессов.

...