Зависание

Замечания о найденных ошибках.
TerribleFloater
Superstar
Posts: 1896
Joined: Thu Feb 28, 2008 4:20 pm

Re: Зависание

Post by TerribleFloater » Thu Sep 03, 2015 4:27 pm

Если кто-нибудь из "потерпевших" не боится поэкспериментировать, предлагаю следующее:
1. Открываем файл kinopoisk_movie.pas в приличном редакторе (Notepad++, например) и находим там кусок, отвечающий за скачивание года (строка 913):

Code: Select all

		begin
			i := i + 4;
			k := MyPos('</a>', all, i+1);
			j := MyPos('</li>',all,i+1);
			if (k>0) and (k<j) then
				j:=k;
			s := copy(all,i,j-i);
			i:=pos('&nbsp;', s);
			if i>0 then
				s:=copy(s, 1, i-1);
			year := RemoveTags(s);
			year:=ClearExtraSpaces(year);
			year:=ClearExtraBlankCharacters(year);
			year := ParseString(year, '(\d+)', 1);
		end;
2. Переделываем его в такой:

Code: Select all

		begin
			i := i + 4;
			k := MyPos('</a>', all, i+1);
			j := MyPos('</li>',all,i+1);
			if (k>0) and (k<j) then
				j:=k;
			s := copy(all,i,j-i);
ShowMessage(s);
			i:=pos('&nbsp;', s);
			if i>0 then
				s:=copy(s, 1, i-1);
ShowMessage(s);
			year := RemoveTags(s);
ShowMessage(year);
			year:=ClearExtraSpaces(year);
ShowMessage(year);
			year:=ClearExtraBlankCharacters(year);
ShowMessage(year);
			year := ParseString(year, '(\d+)', 1);
ShowMessage(year);
		end;
Это приведёт к тому, что при загрузке (с включённым годом!) должно будет по очереди выскочить 6 окошек:
Image
Image
ImageImageImageImage
На примерах — загрузка многострадальной "Битвы за планету обезьян", разумеется.

Жутко интересно, сколько окошек у кого будет и что на на них будет написано.

Потом строчки с добавленными ShowMessage можно будет удалить, конечно.

PS: Если у кого-то описанная работа начнётся с вопроса "А где найти файл kinopoisk_movie.pas?", то лучше её и не начинать ;-)
Хочу: чёрные списки, пол людей, пользовательские поля изданий.
Кинопоиск: Image ПлюсКинопоиск: Image

dima29101977
The leading part candidate
Posts: 157
Joined: Tue Feb 16, 2010 1:49 pm

Re: Зависание

Post by dima29101977 » Thu Sep 03, 2015 6:03 pm

Попробовал, подтверждаю - 6 окошек поочередности вылезли и надписи идентичные Вашим (при включенном годе). Удалил скрипт, скачал новый, тот же 214, и тут начались танцы с бубнами. Сплошной тайм аут вылазит? :o С грехом пополам за 4 минуты 53 секунды еле-еле обложка скачалась. Попробовал снова прогнать, видно что в логе запросы идут, счетчик кадров крутится, а в итоге получил один выборочный кадр и всё. Прогнал еще 2 раза, результат тот же - запрос идет-тайм аут-итог обложка и 1 кадр. Взял другой фильм "Лучший друг шпиона" 2003 г.в. (6 кадров на сайте), но ни в какую больше 3 качать не хочет. А вот при выключенном годе с 2-3 попытки все 6 пришли. Так что извиняюсь, поторопился-рано радовался, действительно что то с годом не то, беру вышесказанные свои слова обратно. Только вот интересно, почему буквально час назад все ОК было (при старом 214 скрипте), ведь не писал бы выше, что все нормуль если у меня проблемы, а при удалении и новой загрузки этого же скрипта пошли глюки?

Joshua
Extra
Posts: 44
Joined: Sat Apr 30, 2011 7:15 pm

Re: Зависание

Post by Joshua » Thu Sep 03, 2015 6:37 pm

Еще нюанс, проверьте. Пять разных русских фильмов загрузились без проблем. Как только пытаюсь загрузить зарубежный, например, http://www.kinopoisk.ru/film/679924/ - все виснет.

Joshua
Extra
Posts: 44
Joined: Sat Apr 30, 2011 7:15 pm

Re: Зависание

Post by Joshua » Thu Sep 03, 2015 6:41 pm

С годом в настройках скрипта похоже правда. Убираю год и http://www.kinopoisk.ru/film/679924/ грузиться без проблем. С вкл. годом в настройках виснет.

TerribleFloater
Superstar
Posts: 1896
Joined: Thu Feb 28, 2008 4:20 pm

Re: Зависание

Post by TerribleFloater » Thu Sep 03, 2015 7:38 pm

В общем, смутная ситуация. Которая может зависеть от множества причин.
Прежде всего, от настроек скачивания вообще (что качаем, сколько, откуда, какой таймаут выставили и т.д.; потом от настроек собственно скрипта; потом от условий коннекта; потом от деятельности на самом сайте.
Вот тот же "Патруль времени" у меня скачался вроде нормально, но... по два кадра за раз :-( Поскольку у меня в настройках стоит скачивать 5 кадров — то понадобилось 3 скачивания. Они быстро прошли, жаловаться не на что, но осадок остался :-( Плюс к тому у меня стоит скачивать по 5 фото людей. Поскольку были лишние закачки — пришли лишние фотографии.
Скрипт кинопоиска — самый навороченный и самый капризный из-за этого. Одна только неотключаемая многопоточность чего стоит...
Одно я знаю твёрдо: кусок скрипта, отвечающий за скачивание года фильма, очень простой и короткий. Сам по себе он ну никак не может подвешивать процесс скачивания. Так что для меня это загадка.
Хочу: чёрные списки, пол людей, пользовательские поля изданий.
Кинопоиск: Image ПлюсКинопоиск: Image

Joshua
Extra
Posts: 44
Joined: Sat Apr 30, 2011 7:15 pm

Re: Зависание

Post by Joshua » Thu Sep 03, 2015 7:49 pm

Странно что все началось вдруг... До начала сентября даже не заглядывал в настройки скрипта. Все летало. Что случилось в начале сентября? Может я что пропустил ))).

andys2010
Supporting actor
Posts: 53
Joined: Thu Aug 21, 2014 7:56 pm

Re: Зависание

Post by andys2010 » Thu Sep 03, 2015 9:39 pm

Продолжу тему
Фильм для пример
http://www.kinopoisk.ru/film/797800
1. Импорт с кинопоиска с галочкой "год" . Зависание скрин 1_1 с логом.
2. Импорт с кинопоиска без галочкой "год". Без зависания скрин 1_2 с логом.

Для http://www.kinopoisk.ru/film/6766/ - та же фигня.


Но для http://www.kinopoisk.ru/film/211281/ хоть с галкой хоть без все нормально.

Этот кинопоиск начинает нервировать бл....
Как мне кажеться что-то они специально наменяли
Attachments
1_2.jpg
1_2.jpg (239.43 KiB) Viewed 4331 times
1_1.jpg
1_1.jpg (255.04 KiB) Viewed 4331 times

ValR
Extra
Posts: 35
Joined: Thu Feb 03, 2011 3:34 pm

Re: Зависание

Post by ValR » Thu Sep 03, 2015 11:01 pm

Проблема зависания на ряде фильмов с Кинопоиска: например, из 7 фильмов Полицейская академия зависания идут на 4-х. Три скачиваются нормально.
С уважением, ValR.

ValR
Extra
Posts: 35
Joined: Thu Feb 03, 2011 3:34 pm

Re: Зависание

Post by ValR » Thu Sep 03, 2015 11:19 pm

После снятия галочки у года все фильмы Полицейской академии скачались нормально.
С уважением, ValR.

TerribleFloater
Superstar
Posts: 1896
Joined: Thu Feb 28, 2008 4:20 pm

Re: Зависание

Post by TerribleFloater » Fri Sep 04, 2015 7:07 am

Мне кажется, что что-то делается на сайте (аналогичная фигня была после того, как Яндекс купил Кинопоиск и стал перетаскивать сайт на свои сервера). Косвенным свидетельством может служить следующее:
В моих настройках стоит скачивать по 5 кадров подряд, страницы не перемешивать. То есть кадры качаются строго по очереди.
Так вот, при последовательных закачках "Битвы за планету обезьян" я увидел несколько абсолютно одинаковых кадров, у которых оказались разные адреса. То есть похоже, что идёт очередная реорганизация, которая нам и аукается :-(
А вот почему каждому она аукается по-разному и при каких делах тут флажок "скачивать год" — это уже относится к танцам с бубном. У меня выставлен максимально возможный таймаут ожидания; качаю одну обложку, 5 кадров и 5 фото (никаких обоев, постеров, трейлеров и прочей лабуды); убрано почти всё скачивание с посторонних сайтов (за исключением сериалов) — и всё более-менее нормально.
О борьбе с зависанием я спрашивал тут уже давно. Автор ответил, что причина в многопоточности скачивания. Почему нельзя вставить хотя бы ожидание нажатия клавиши Esc, я так и не понял :-(
Хочу: чёрные списки, пол людей, пользовательские поля изданий.
Кинопоиск: Image ПлюсКинопоиск: Image

Post Reply