Personal Video Database
Русский => Разработчикам => Скрипты, Плагины, Шаблоны и Шкурки => Тема начата: irwin от 11 Февраля 2012, 20:20:48
-
Фильмографии на Kinopoisk.ru и Kino-Teatr.ru дополняют друга. На Кинопоиске бОльшая база по зарубежному кино, на Кино-Театре - по российским/советским актерам, актерам ближнего зарубежья, в том числе по участию в отдельных сериях.
Мне понадобилось полные фильмографии по некоторым российским актрисам. Этот скрипт - первый шаг на пути к тому, чтобы в PVD можно было удобно собирать полную фильмографию, находясь в режиме "Люди".
Вот фрагмент результата его работы:
(http://i026.radikal.ru/1202/17/6ca8ce0e1ad9.gif)
Серии с участием актера добавляются как фильмы. Из указания сезонов удаляются дефисы, если они есть - для унификации и приведения к виду Кинопоиска. К названию сериала добавляются постфиксы в формате eNNN с номером серии. В оригинальное название заносится название серии.
Если в распоряжении разработчиков скриптов появится возможность добавлять серии, я ее, возможно, использую.
Настройки по фильмографии:
- Установить флаг на белом фоне для "Фильмографии"
- При совместном использовании со скриптом kinopoisk_person -
1) плюс флаг на белом фоне для kinopoisk_person
2) плюс установить флаг "Объединять фильмографию".
(Используйте пакетный режим KinoPoisk+Kino-Teatr или соблюдайте
последовательность kinopoisk_person, затем с kino_teatr_person)
В окне Выбора персоны выбирайте нужную строку одним щелчком (флаг на затемненном фоне) либо просто на кнопке Enter, если найден один человек.
Update:
v0.0.1.1 от 13.02.12
! Обновлен разбор результатов поиска
v0.0.2.0 от 16.02.12
! Скрипт переименован в kino-teatr_person.psf
+ Даты рождения, смерти
+ Другие имена, переведенное имя
+ Биография
+ Фото
17.02.2012:
Изменения в версиях далее в отдельных сообщениях.
20.02.2012:
Новые версии доступны через "Поиск обновлений" в PVD.
В этой ветке больше не выкладываются
-
поздравляю с первым скриптом , только правильно его было бы назвать кинотеатр.ру персоны , и если автор будет не против выложить в общий доступ через автообновление.
-
Название скрипта для меня не принципиально. Но мне кажется логичным текущее по причине того, что скрипт заполняет только фильмографию и никакие другие данные по персоне, в отличие от других скриптов по персонам.
Биография Кино-Театра расширила бы то, что дает Кинопоиск, но для меня это неактуально. Достаточно того, что заполняет kinopoisk_person (как вариант, с выключенной опцией "Фильмография").
Так что я предлагаю оставить название таким на случай, если другому разработчику биография с Кино-Театра покажется нужной, а название Кино-Театр.ру (персоны) уже будет занято. (Логично было бы его скрипт назвать "Кино-Театр.ру (биография)".
То что, скрипт будет относиться к скриптам по персоналиям, будет дополнительно следовать из того, что он будет (если так решит полномочное лицо) выложен в автообновлении скриптов по персонам.
Update:
Попытаюсь-таки добавить заполнение фото, биографии и даты рождения. Тогда и переименую скрипт.
Update 16.02.12:
Сделал. Переименовал.
-
Предостережение по совместному использованию с kinopoisk_person:
Если скрипт Кинопоиск(персоны) выполнять после этого скрипта и без установленного флага "Объединять фильмографию", то в большинстве случаев для отечественных актеров будет получена урезанная фильмография.
Это связано с тем, что в текущей версии скрипта kinopoisk_person 0.1.0.25 добавляется количество фильмов, указанное на сайте Kinopoisk.ru в поле "Всего фильмов".
Поэтому предпочтительно для отечественных актеров:
- либо остановиться на каком-либо одном из этих скриптов
- либо соблюдать рекомендации по настройкам при совместном использовании скриптов, указанные в первом посте (последовательность KP-KT и флаг "Объединять фильмографию")
-
v0.0.2.1 от 17.02.12
* Постфикс серий: Удаление двойного пробела
* Постфикс серий: Обработка '-_й фильм'
! Ссылка серии в отсутствие ссылки на сайте
* Описание скрипта: "информацию о персоне"
Последняя версия скрипта в первом сообщении.
-
Что бы все узнали об вашем скрипте я выкладываю его на автообновление , также он будет доступен со страницы Загрузить.
-
v0.0.2.2 от 20.02.12
* Обработка отсутствия фотографии в био
* Имя скрипта 'Кино-Театр.ру Персоны'
* Подстройка поискового запроса
-
Где я могу найти этот сценарий сейчас.
-
Где я могу найти этот сценарий сейчас.
Как я написал в первом сообщении темы, через обновление в PVD:
Помощь - Поиск обновлений, строка Кино-Театр.ру Персоны
(Последняя версия - 0.0.2.2)
-
нет , это не он . Я имел в виду скрипт по персонам , написанный недавно одним человеком с ником irwin.
Понял. Подправил вкрипт и залил. Дело в том, что для типа скрипта обязательно нужно использовать константы stMovies = 0;
stPeople = 1;
stPoster = 2;
Вот цитата из разговора с администратором ресурса , там были какие то проблемы с переменными , так что в следующих версиях будь внимателен.
-
Где я могу найти этот сценарий сейчас.
Как я написал в первом сообщении темы, через обновление в PVD:
Помощь - Поиск обновлений, строка Кино-Театр.ру Персоны
(Последняя версия - 0.0.2.2)
Спасибо за помощь и ответ.
Я нашел скрипт через автоматическое обновление системы.
-
Вот цитата из разговора с администратором ресурса , там были какие то проблемы с переменными , так что в следующих версиях будь внимателен.
Понятно. Изначально прописал возврат типа скрипта без константы, единичкой (персоны). Скрипт появлялся в списке скриптов по людям, на этом и остановился. А тут не прошло.
v0.0.2.2 от 21.02.12
* Обработка отсутствия фотографии в био
* Имя скрипта 'Кино-Театр.ру Персоны'
* Подстройка поискового запроса
* Константа типа скрипта для обновления
-
У меня есть предложение для лучшей передачи информации:
Изменение порядка передачи информации:
первый от био страницы затем фильмография и добавить адреса из этих сайтов как в Люди IMDB сценарий - там же сделал то же самое.
Конечно, если это вообще возможно сделать!
ссылка:
www.videodb.info/forum_ru/index.php?action=dlattach;topic=753.0;attach=1937
-
Ivek23 выложите пожалуйста вложение где нибудь на другом сайте , у нас нет доступа к данной ссылке.
-
Я прошу прощения. Я исправить ссылку.
Я надеюсь, что все будет хорошо.
Сценарий находится в IMDB (Персоны) тема.
Ссылка:
Imdb простой скрипт
www.videodb.info/forum_ru/index.php?action=dlattach;topic=753.0;attach=1938
-
Ivek23,
Не совсем понял.
Речь о том, чтобы изменить порядок загрузки страниц - сначала биография, потом фильмография?
Или о том, что в URL персоны заносить не ссылку на фильмографию, а ссылку на биографию?
В любом случае, я не пока не вижу, в чем будет преимущество или дополнительные возможности после такого изменения. Ведь результат такой же - заносится и фильмография, и биография (если есть).
Может быть, пояснишь? Я взглянул на скрипт IMDB People, но он мне ничего не прояснил. Какой бы ни был порядок, это никак не влияет на возможность использовать скрипт в пакете с другим.
Что касается ссылки, заносимой как URL персоны. Я остановился на варианте, когда заносится ссылка на фильмографию по двум причинам:
1) Особенность сайта kino-teatr.ru в том, что раздел фильмографии заполнен чаще, чем биографии
2) Ключевым разделом мне представляется именно фильмография, а биография - необязательным дополнением для удовлетворения любопытства. Скажем, на сайте kinopoisk.ru даже не сочли нужным заводить такой раздел.
Так что жду разъяснений насчет преимуществ или дополнительных возможностей. Можно на английском, если удобнее.
-
v0.0.2.3 от 25.02.12
+ Третье название фильма
+ Второе название серии и сериала
* Постфикс: скобка после маркера серии
* "Сезон" в наименовании серии и сериала
Второе (примущественно оригинальное) название сериала решил поместить после постфикса серии, потому как часто названия длинные, и на не широких мониторах номера серии после второго названия не было бы видно.
Примеры:
(http://s017.radikal.ru/i429/1202/f9/d810b83ffd71t.jpg) (http://s017.radikal.ru/i429/1202/f9/d810b83ffd71.gif)(http://s004.radikal.ru/i207/1202/4f/500b99bd1e1bt.jpg) (http://radikal.ru/F/s004.radikal.ru/i207/1202/4f/500b99bd1e1b.gif)(http://s018.radikal.ru/i520/1202/1a/a6dff5d3689ct.jpg) (http://radikal.ru/F/s018.radikal.ru/i520/1202/1a/a6dff5d3689c.gif)
-
Это, конечно, только предложение, и люди Imdb сценарий просто пример того, как вы можете добавить дополнительную информацию. Как я уже заметил, в кино-teatr.ru иначе, таким образом,получать и передавать информацию в противном случае это практически невозможно сделать, как это делается сейчас.
Ирвин, но если вы вошли в английской части форума, то вы можете там увидеть и прочитать более подробную информацию о том, что люди Imdb сценарий.
-
Я смотрел и ветку по скрипту IMDB-Люди и сам скрипт. Он в поле комментариев, которое не трогает основной плагин, пишет то, что вы считаете существенным.
Как это связано с логикой моего скрипта?
Что именно и кому сейчас невозможно сделать? Этот или другой скрипт не сможет заполнить поле "Комментарий"?
И что значит "передавать информацию"?
-
Я смотрел и ветку по скрипту IMDB-Люди и сам скрипт. Он в поле комментариев, которое не трогает основной плагин, пишет то, что вы считаете существенным.
Что важно для меня,не означает, что также важно для других пользователей.
Как это связано с логикой моего скрипта?
Существует никакой логики и никакой связи с Ваш скрипт.
Что именно и кому сейчас невозможно сделать? Этот или другой скрипт не сможет заполнить поле "Комментарий"?
Ни один, я хотел бы сказать, что это немного труднее сделать.
И что значит "передавать информацию"?
"передавать информацию" --> скачать
Это было бы все по этой теме. Является также извиниться, если было какое-то недоразумение, потому что иногда компилятор немного не правильно переведенный текст.
Я не понимаю русский язык.
-
Чтобы загрузить сайт есть здесь кусок кода:
procedure ParseSearchResults( var HTML : String );
...
....
{JPEG} previewURL := StringReplace( s, '/works/', '.jpg', false, true, true );
ExtraLinks[smPhoto]:= StringReplace( s, '/works/', '.jpg', false, true, true );
AddSearchResult( Title, '', '', URL, previewURL );
end;
curPos := PosFrom ( GResUnitMarker, HTML, curPos + 700 );
end;
until curPos = 0;
end;
-
Ivek23,
I am sorry, I still can not quite understand essence of your suggestion.
What improved result would we get?
As for your example with extra line containg ExtraLinks[smPhoto]:
This approach will work if search returnes one result.
If there are two or more results, it would fill person's photo with a last link jpeg, whatever user's choice is.
Moreover, we will get HTTP error message if, say, last search result link refers to person page as producer whereas we want to fill actor's data (in most cases there is photo at actor/foto and no photo at producer/foto).
-
Ребята если можно кратко по русски , может человек дельный совет дает , так хоть понять о чем вы.
-
Ivek23,
I am sorry, I still can not quite understand essence of your suggestion.
What improved result would we get?
As for your example with extra line containg ExtraLinks[smPhoto]:
This approach will work if search returnes one result.
If there are two or more results, it would fill person's photo with a last link jpeg, whatever user's choice is.
Moreover, we will get HTTP error message if, say, last search result link refers to person page as producer whereas we want to fill actor's data (in most cases there is photo at actor/foto and no photo at producer/foto).
I explain what I mean by this - this is my case:
for some people elsewhere no photo (imdb, kinopoisk), here are the photo for people. The search results also display a photo of people but the script does not transfer the photo, script with this part of code,
Чтобы загрузить сайт есть здесь кусок кода:
procedure ParseSearchResults( var HTML : String );
...
....
{JPEG} previewURL := StringReplace( s, '/works/', '.jpg', false, true, true );
ExtraLinks[smPhoto]:= StringReplace( s, '/works/', '.jpg', false, true, true );
AddSearchResult( Title, '', '', URL, previewURL );
end;
curPos := PosFrom ( GResUnitMarker, HTML, curPos + 700 );
end;
until curPos = 0;
end;
yes, now is the transfer of photo.
Simple said: previously it was not photos, photos are now.
If however you find that it does not make sense, then do not add this in the script.
Thank you.
Примерный перевод:
Ivek23,
Мне очень жаль, я все еще могу отмечает совсем понимаю суть вашего предложения.
Что Улучшение результата Wouldnt мы получим?
Что касается вашего примера с дополнительной строки с указанной ExtraLinks [smPhoto]:
Будет ли этот подход, поиск работы, если returnes один результат.
Если есть два или более результатов, Wouldnt заполнить последнюю фотографию человека с выбором ссылка JPEG Независимо от пользователя есть.
Кроме того, мы будем получать HTTP сообщение об ошибке, если, скажем, последнее звено относится Страница результатов поиска Вт лицо, действующее в качестве продюсера мы хотим заполнить данные актера (и есть фото мост дела на актера / фото и без фото на производитель / фото).
Я объясню, что я имею в виду - это мой случай:
Для некоторых людей нет фото другом месте (IMDb, kinopoisk), вот фото для людей. Результаты поиска дисплей также фотографии людей, но сценарий не передавать фото, сценарий с этой частью кода,
Чтобы загрузить сайт есть здесь кусок кода:
procedure ParseSearchResults( var HTML : String );
...
....
{JPEG} previewURL := StringReplace( s, '/works/', '.jpg', false, true, true );
ExtraLinks[smPhoto]:= StringReplace( s, '/works/', '.jpg', false, true, true );
AddSearchResult( Title, '', '', URL, previewURL );
end;
curPos := PosFrom ( GResUnitMarker, HTML, curPos + 700 );
end;
until curPos = 0;
end;
Да, в настоящее время является передача фотографий.
Просто сказал:. Раньше было фотографии заметки, фотографии сейчас
Однако, если вы обнаружите, что оно не имеет смысла, то добавьте в заметки и сценарий.
Спасибо.
А это:
Ирвин, вы также можете открыть эту тему и английской части форума, как облегчить Вт Общайтесь, Все прочие вопросы, подлежащие спад здесь, потому что я заметил, что русский язык не работает проблемы, по крайней мере Такое чувство я получаю.
-
Ivek23,
For now, I can not reproduce situation, when a photo is not filled with current script.
Even if "Biography" and "Filmography" fields are unchecked.
And, as I said, your addition sometimes could return not existing link.
Try your version with extra logmessage for Jodie Foster:
{JPEG} previewURL := StringReplace( s, '/works/', '.jpg', false, true, true );
ExtraLinks[smPhoto]:= StringReplace( s, '/works/', '.jpg', false, true, true );
Logmessage('ExtraLinks[smPhoto]='+ExtraLinks[smPhoto]);
AddSearchResult( Title, '', '', URL, previewURL );
You will get this:
(27.02.2012 11:17:36) ExtraLinks[smPhoto]=http://kino-teatr.ru/acter/foto/hollywood/53185.jpg
(27.02.2012 11:17:36) ExtraLinks[smPhoto]=http://www.kino-teatr.ru/producer/hollywood/53185.jpg
(27.02.2012 11:17:36) ExtraLinks[smPhoto]=http://kino-teatr.ru/director/hollywood/53185.jpg
(27.02.2012 11:17:36) GET: http://kino-teatr.ru/acter/foto/hollywood/53185.jpg
(27.02.2012 11:17:37) GET: http://www.kino-teatr.ru/producer/hollywood/53185.jpg
(27.02.2012 11:17:37) GET: http://kino-teatr.ru/director/hollywood/53185.jpg <-- not existing file
(27.02.2012 11:17:40) GET: http://kino-teatr.ru/kino/acter/w/hollywood/53185/works/print/
(27.02.2012 11:17:41) GET: http://kino-teatr.ru/kino/acter/w/hollywood/53185/bio/
(27.02.2012 11:17:41) ParseBio...
(27.02.2012 11:17:41) GET: http://kino-teatr.ru/acter/foto/hollywood/53185.jpg <-- right link that works now
djek-ural,
Ivek23 предложил вставить строку перед AddSearchResult. Без этого, как он утверждает, фото не заполняется, а с ней - заполняется. Я такого не наблюдаю и утверждаю, что его строка всегда занесет в ExtraLinks[smPhoto] ссылку из последней строки результата поиска. В случае, когда по человеку есть данные не только как об актере, но и как и продюсере/режиссере, ссылка будет на несуществующий файл. Пример - выше.
-
Правда, истинная правда. Плохая идея с моей стороны
Лучше так:
procedure ParseFilmography (FilmographyURL : AnsiString; var HTML : String);
var
docPos, rowPos, curPos, endPos, Category : Integer;
txt, row, sCat, Year, URL, Title, OrigTitle, Role,
SeriesTitle, OrigSeriesTitle, SeriesRole, SeriesURL, TMarkerB, TMarkerE : String;
begin
...
...
docPos := docPos + Length(row);
end;
curPos := PosFrom('<img src="/acter/foto/', HTML, endPos);
if curPos > 0 then begin
curPos := curPos + Length('<img src="/acter/foto/');
endPos := PosFrom('" width="', HTML, curPos);
ExtraLinks[smPhoto] := BASE_URL+'/acter/foto/'+Copy(HTML, curPos, EndPos - curPos);
end;
ExtraLinks[smBio]:=StringReplace(FilmographyURL, 'works/print', 'bio', false, true, true);
end;
procedure ParseSearchResults( var HTML : String );
Отказ от дальнейшего поиска решений. Со своей стороны, вопрос был закрыт. Хорошая работа, спасибо за усилия, но сценарий, к сожалению, больше не используется.
-
Есть еще один подводный камень для тех, кто попытается поменять что-нибудь в загрузке фото.
В случае, если фото артиста на сайте нет, приведенный выше код может привести к тому, что загрузится чужая фотография. Это произойдет тогда, когда в разделе "Ревью" появится ссылка на фото, содержащая "acter/foto" (а так иногда бывает).
Для меня так и осталось тайной, что именно не работает для Ивека.
-
Есть еще один подводный камень для тех, кто попытается поменять что-нибудь в загрузке фото.
В случае, если фото артиста на сайте нет, приведенный выше код может привести к тому, что загрузится чужая фотография. Это произойдет тогда, когда в разделе "Ревью" появится ссылка на фото, содержащая "acter/foto" (а так иногда бывает).
Для меня так и осталось тайной, что именно не работает для Ивека.
Видимо так.
Она работает, но при перезагрузке сценарий.
-
Комментарий по использованию Preview при выборе персоны.
На англоязычном форуме nostra упоминает, что этот режим не подразумевает использование фото персон.
Но во время выбора фото иногда нужно. Например, для выбора нужного человека из полных однофамильцев. Или когда мы помним фамилию, но не помним имя.
Для меня выход был в том, чтобы все-таки использовать этот режим, но приняв некоторые ограничения.
Первое, не использовать множественные выбор. Да и зачем он тут нужен?
Второе, не использовать режим выбора на белом фоне (второй клик в чекбоксе). (Кстати, именно в этом случае любой скрипт перекомпилируется и идет на второй проход). По идее, это тоже никого не должно напрягать - щелкнуть для выбора мышкой только один раз и затем OK. Или даже только OK, если поиск вернул один результат.
Об этом было кратко написано в первом сообщении этой темы.
-
v0.0.3.0 от 31.03.12
! Обновлен парсинг согласно изменениям на сайте