Многопоточный скрипт на Python
Многопоточный скрипт на Python - проверка уникальности фото в Google
_____________________________________________________________
Задание:
Нужен многопоточный скрипт на Python проверки изображения на уникальность в Google. С поддержкой прокси. Входные данные для софта URL прокси (обновляется раз в N минут), число потоков и путь до папки с картинками (необходим рекурсивный перебор папки)
С такими функционалом, который настраивается в config.ini.
Содержимое config.ini (параметры можно менять, т.е. чтобы можно было регулировать потоки и тд.):
thread=50 //Количество потоков
images=C:/images //Это папка с изображениями, которые нужно проверить на уникальность. Нужно эту папку перебирать рекурсивно, т.е. чтобы в других папках скрипт тоже изображения проверял
proxy=on_url или on_file или off //(если on_url - тогда берём прокси из proxy_url, если on_file - тогда берём прокси из proxy_file, если off - тогда программа работает без прокси)
proxy_url=http://site.ru/proxy.txt (прокси в таком формате IP:Port)
proxy_file=C:/proxy.txt
proxy_timeout=5 //Количество СЕКУНД для таймаута прокси, если не отвечает, берём следующий прокси в потоке
proxy_update=4 //Количество МИНУТ для обновления списка прокси, интервал подгрузки из URL или файла
del_image=true или false // Параметр определяет удалять ли фотографию по количеству совпадению - если true - сверяем число совпадений с count_retry и если это число больше count_retry - удаляем фотографию. Также ЭТОТ может иметь ЗНАЧЕНИЕ false, тогда сверять число совпадений и удалять фото не нужно.
count_retry=10 //Если del_image=true и количество совпадений фото больше count_retry, тогда удаляем фотографию
otchet=C:/otchet.txt
Отчёт в таком формате: Полный путь до изображения;Количество повторов
Например:
C:/images/image1.jpg;12
C:/images/image2.jpg;0
C:/images/image3.jpg;1
С каждой новой строки изображение и количество повторов в гугле через ;
Алгоритм работы:
1) Заходим на http://www.google.ru/imghp (через прокси или без прокси, в зависимости от настроек в config.ini) Там будет иконка фотоаппарата – туда нужно загрузить фото.
2) Загружаем картинку из списка, который был получен путём рекурсивного перебора файлов из папки.
3) Ждём результата
4) Проверяем количество сопадений и дальше скрипт работает в зависимости от настроек в config.ini