Closed GoogleCodeExporter closed 9 years ago
Полностью согласен с предложением, у меня
такая же проблема со скачиванием больших
списков тегов с гелбуры и пиксива.
Original comment by kuroi7...@gmail.com
on 10 Mar 2013 at 9:22
На данный момент уже сделан механизм,
благодаря которому можно добавлять
одновременно несколько копий одного и того
же ресурса.
Но все еще стоит вопрос
"последовательности" (как это названо тут).
И причина даже не в нагрузке на один ресурс
одновременно (это еще можно ограничить
глоабльным пулом на количество тредов).
Проблема в том, что на многих ресурсах писк
начинается пост-запросом который в
дальнейшем запоминает запрос и выдает
результаты в соответствии с сессией. Т.е.
если попытаться качать 2 разных запроса
одновременно с одного такого ресурса, то
один запрос перекроет другой, и результаты
будут получаться только по последнему. Я
даже не уверен, что будет, если попытаться
сделать загрузку списка через граббер и
одновременно начать поиск в браузере.
Поэтому "последовательность" для таких
ресурсов крайне важна.
Original comment by catgirlfighter
on 20 Mar 2013 at 2:30
>На данный момент уже сделан
Но в релиз он еще не попал :)
Original comment by catgirlfighter
on 20 Mar 2013 at 2:30
да, "последовательность" - ключевое же
слово) Сперва получаем список по одному
тегу, потом по другому и так далее, что б не
одновременно, разумеется)
Original comment by ilia....@gmail.com
on 20 Mar 2013 at 10:17
Общий счетчик потоков и
"последовательность" реализованы. Осталось
приделать возможность вставлять набор
тегов.
Original comment by catgirlfighter
on 5 Apr 2013 at 11:59
Добавлено. Рядом с ключевыми словами
кнопка "..." -> Создать список тэгов.
Правда, тестилось мало, могут быть буги.
Original comment by catgirlfighter
on 26 Apr 2013 at 4:06
Большое спасибо за улучшение, буду тестить.
Предложение для улучшения:
Можно ли сделать такой же список по номерам
авторов на пиксиве, у меня там лист в 300
художников, хочется ставить его раз в
несколько месяцев на ночь и качать по
одному по-очереди.
Original comment by kuroi7...@gmail.com
on 27 Apr 2013 at 5:37
Посмотрел как оно качает списком. Есть
предложение:
Не закачивать сразу все листы, а качать
каждый тег отдельно.
То есть берём из списка первый тег и
работаем только с ним (создаём список,
качаем).
Когда первый тег выполнится берём
следующий и так до конца списка тегов.
Так должно быть меньше багов и если
вылетит, то не будет такой ситуации когда
ряд тегов дропнется на середине закачки,
тем более список тегов в несколько тысяч
позиций наверно будет иметь дело с
переполнениями и прочим.
В общем нужна стабильная осторожная
закачка именно что по-очереди, а не все тэги
сразу, их там в списке может быть очень
много. Кому надо будет ускорить поставят
одновременную закачку больше числа
картинок за раз.
PS в настройках потоков у меня стоят все
единички кроме числа картинок за раз (их 5).
Original comment by kuroi7...@gmail.com
on 27 Apr 2013 at 5:55
На счет "создаем список - качаем" - не выйдет.
Переключение режимов
"список-пикчи-список-пикчи" сложно
контролировать, особенно если в списке
есть разнотипные ресурсы. Много условий,
скорее нестабильнее станет, чем наоборот.
Могу разве что добавить опцию, которая
вырубит распределение нагрузки по
ресурсам, это заставит получать списки по
порядку, т.е. сначала получаться все пикчи
первого запроса в очереди, затем второго и
т.д. И список пикч так же получится строго
по порядку, сначала от первого запроса,
затем от второго и т.д.
Какие ошибки, возникающие именно в
процессе закачки, и прерывающую работу,
тебе встречались?
Пиксив по порядку... Быстрый вариант -
отказаться от поиска по тегам на странице
автора, или же долгий вариант -
прикручивать списки для текстовых "частных
параметров". Надо будет подумать, что лучше.
Хотя, лучший вариант будет добавить 3й
вариант поиска, где имя автора надо
указывать в тэгах.
Original comment by catgirlfighter
on 27 Apr 2013 at 8:21
С опцией отключения распределения
нагрузки согласен, пусть хоть список и
будет большим но последовательным.
По авторам для пиксива.
2 и 3 варианты понятны, не понятен 1 вариант,
что значит отказаться от поиска по тегам на
странице автора? Это что, когда галочка use
user ID установлена (или при создании списка
авторов), то поле тегов станет неактивным?
PS У меня раньше вылетало когда создаёшь
несколько задач параллельно, если в
следующий раз вылетит - сохраню сообщение
об ошибке и сообщу.
PS2 странно, перестало качаться с пиксива,
даже список не составляет, кажется у них
что-то поменялось, или только кажется?
Original comment by kuroi7...@gmail.com
on 28 Apr 2013 at 7:52
Нет, согласно первому пункту поле userid
убрать и использовать строку тэгов для
ввода id-а. Но я думаю, что лучше пусть будет
3й вариант.
ps2: что-то поменялось у них на странице.
Добавился еще 1 js-скрипт, который по
какой-то причине не корректно
обрабатывается xml-парсером. Сейчас буду
смотреть.
Original comment by catgirlfighter
on 29 Apr 2013 at 8:38
>На счет "создаем список - качаем" - не выйдет.
Если нельзя сделать последовательную
закачку, то есть предложение хотя бы в
списке загрузок сделать визуальное
оформление, где бы было видно какие
картинки относятся к какому тегу, наподобие
Тег1:
ссылка1
ссылка2
Тег2:
ссылка1
ссылка2
и т.п. Ну, и можно ещё сделать что б на
странице режима закачки самих пикч
отображался где нибудь
вверху/слева/справа/внизу именно сам
список тегов, который мы вводили перед
этим, с единым для каждого тега
прогрессбаром загрузки, который бы
показывал на сколько процентов загружен
именно этот тег целиком из всего
поставленного списка, что б это выглядело
как в разных download-менеджерах или как в том
же мюторренте
Original comment by ilia....@gmail.com
on 29 Apr 2013 at 12:38
Сколько скачано по текущему "тэгу" можно
посмотреть в common->general. Разве что нужно
добавить туда инфу, по какому тэгу идет
поиск.
Original comment by catgirlfighter
on 29 Apr 2013 at 12:53
Добавил опцию, выключающую распределение
потоков по ресурсам. Если распределение
потоков выключено, то задания потокам
будут выдаваться по порядку в списке. Тем
не менее, это не значит, что обработаны они
тоже будут по порядку. Если используется
много потоков, то некоторые потоки могут
отрабатывать раньше предшествующих, и
тогда некоторые соседствующие результаты
могут меняться местами.
Добавил рядом с именем ресурса искомый тег
(в скобках) на вкладке "Общее"-"Основное".
Пиксив, вестимо, поправлен. Ошибка
заключалась в том, что парсер парсил
страницу как xml, а не html-файл, из-за чего
пытался парсить содержимое js-скрипта.
Original comment by catgirlfighter
on 29 Apr 2013 at 2:59
Ах да, и для пиксива добавлены опции "works
(userid from tags)" и "favorites (userid from tags)",
соответственно позволяющие получать
работы и избранное по id автора, введенного
в поле для тэгов.
Original comment by catgirlfighter
on 29 Apr 2013 at 3:01
>common->general
Не очень понял что это значит и где это. Я
предлагаю улучшить визуальное оформление,
сделать его более наглядным и
"юзерфрендли". Кстати, а что за кнопка "теги"
- я думал что оно может быть там, но там
совершенно пусто. Картинкой приложил, как я
это вижу, примерно. Что б по стрелочке можно
было сворачивать отдельный "тег", что б
можно было "свернуть все", "раскрыть все" и
т.д
Original comment by ilia....@gmail.com
on 29 Apr 2013 at 3:10
Attachments:
"Тэги" - не доделанный раздел. В нем можно
посмотреть список накопленных по всем
изображениям тэгов. Естественно, тэги
можно собирать только с тех ресурсов, где
их можно взять. Список тэгов появляется
когда список завершен. Т.к. раздел не
доделанный, вестимо, и видок у него не
доделанный.
Отдельные части списка останавливать
нельзя (т.е. нельзя приостановить или
остановить закачку "отдельных тэгов"). В
список для реализации добавить можно, но
список и так уже длинный, реализовано будет
ой как не скоро.
Касательно прогресса по "тегам". Прогресс
по ресурсам есть. Возможно стоит немного
улучшить визуализацию, но работу он свою
делает. Относительно "прогресса по тегам" -
это вряд ли. "Список тегов" - это кастыль,
позволяющий ленивому пользователи не
дублировать вручную один и тот же ресурс с
теми же настройками, но с разными тегами,
несколько раз. Т.е. для программы разницы по
тегам нет, тег - это всего лишь одна из опций
настройки (программа предназначена для
упрощения массовой загрузки с конкретных
ресурсов, а не поиска картинок по указанным
тегам). Могу разве что добавить в планы на
реализацию возможность отображать
прогресс загрузки по отдельным параметрам
картинки. Т.е. можно будет смотреть
прогресс не только по тегу, но и по
автору/альбому/оценке/размеру/что в голову
взбредет лишь бы в полях у пикчи было.
Original comment by catgirlfighter
on 29 Apr 2013 at 3:35
Attachments:
Т.е. нельзя в принципе, даже теоретически,
реализовать что бы отображался счётчик
скачиваемых изображений не сто раз по
отдельным ресурсам каждый тег, а что б
отображался некий общий кумулятивный
счётчик одного тега для всех ресурсов? =(
Как то переработать логику.. Печаль. В
текущем виде оно даёт мало полезной
информации - слишком много строк, тег вроде
один, а его много и не понятно, сколько в
итоге и чего скачано.. Ну или хотя бы,
например, собирать общее число картинок по
разным ресурсам с одним тегом, и
высчитывать хотя бы в процентном
соотношении, сколько скачано всего из
этого объёма, без указания общего числа
скачиваемых картинок для этого тега, но при
разворачивании списка что б показывалось
сколько качается по каждому ресурсу - т.е ту
же инфу что сейчас показывается слева
немного преобразить внешне, визуально
сгруппировать по тегам, и просто
подсчитывать процент готового.
Зато хочу заметить, что пока никаких ошибок
в работе новой функции выявлено не было,
всё стабильно. Большое спасибо!
Original comment by ilia....@gmail.com
on 29 Apr 2013 at 4:41
Attachments:
Я ж описал, как это "теоретически" можно
сделать. Тэг - лишь одна из опций поиска,
просто имеющаяся у всех ресурсов. Сделать
группировку по нему - это то же самое, что
сделать группировку по любому другому
полю. Поэтому лучше вместо того, чтобы
делать что-то узконаправленное, сделать
что-то универсальное. В общем, это нужно
обдумавать и реализовавать какой-то
обобщенный вариант.
Original comment by catgirlfighter
on 29 Apr 2013 at 5:14
Протестировал закачку списком авторов с
пиксива.
Создал список около 10 номеров авторов,
количество всех потоков установил равным
единице, распределение нагрузки включено.
При закачке каждые 50-100 картинок (примерно)
останавливается без каких-либо сообщений и
просто не качает, ставлю на паузу и
продолжить, и так до следующего раза. В
итоге 2к картинок успешно докачалось при
периодических остановках и нажатиях
пауза-продолжить.
Проверил в следующем запуске с выключением
распределения нагрузки, качает примерно
по-очереди, но так же периодически
останавливается.
Потом закачал 15 других авторов по-одиночке
без каких-либо ошибок и остановок.
PS Если установить число потоков картинок
больше 1 (пробовал 2 и 5), а остальные потоки
оставить равными единице, то при одиночных
и закачках списком уходит в бесконечный
цикл, про который я писал в соседней 104 теме.
Я пока не проверил связано ли это с
конкретными авторами на пиксиве или нет. Но
как минимум это не страшно если качать по
одной картинке списком авторов, только бы
исправить проблему с остановками.
Original comment by kuroi7...@gmail.com
on 1 May 2013 at 10:31
за последнее время много качал с гелбуры
списками, всё работает идеально.
А вот с пиксива по списку авторов всё так же
как описано в посте выше.
Если в ближайший год это исправится буду
очень рад.
Original comment by kuroi7...@gmail.com
on 20 May 2013 at 1:36
За ближайший год, хаха.
Хотелось бы сказать, что "да ну, так много
времени не потребуется", но на самом деле
хрен его знает, остается надеяться на
лучшее :)
Original comment by catgirlfighter
on 20 May 2013 at 1:40
>Если в ближайший год это исправится буду
очень рад.
Вроде бы исправлено.
Original comment by catgirlfighter
on 26 Jun 2013 at 2:20
Теперь всё работает как надо, без ошибок,
вылетов и циклов (то есть проблемы 93, 104 и 113
не встречались).
Проверял закачкой двух групп с пиксива по 30
авторов, по 5к и 7к картинок.
Качалось по 5 картинок одновременно.
Выражаю огромную благодарность за
проделанную работу.
Original comment by kuroi7...@gmail.com
on 27 Jun 2013 at 6:57
Original comment by catgirlfighter
on 27 Jun 2013 at 10:27
Original issue reported on code.google.com by
ilia....@gmail.com
on 7 Mar 2013 at 9:41