anynamer
Silver Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Привет! Нужен скрипт добычи и переделки ссылок из html файлов, скачивания по ним и переименования скаченных файлов. Есть сайт с фото, где можно скачать "целые" фотографии маленького размера. Но дело в том, что чтобы скачать все что нужны в ручную нужно, наверное, несколько недель. Я сохранил несколько десятков html (с галереями превьюшек) откуда можно взять некоторую инфу и сделать из неё прямые ссылки на эти небольшие фото (оригиналы фото с этого фотобанка скачать нельзя без авторизации и прав на это). Приведу кусок html кода где есть полезная инфа для составления ссылки, в этом куске будет описание двух (чтобы было понятна структура html) фото (а в одном html их несколько десятков). Код: <article class="rubric-list__article rubric-list__article_photo"><figure class="rubric-list__article-image"><a class="rubric-list__article-anchor" href="/search/1152/104110.html?query=&area=all&country_id=15&event_from=1924-01-01&created_from=&region_id=&event_to=1991-12-31&created_to=&city_id=&orientation=all&order=desc" target="_blank"><img src="/images/old_thumbnail/10/41/104110_thumbnail.jpg" alt="ЗДАНИЕ КАРТИННАЯ ГАЛЕРЕЯ" title="Здание Государственной картинной галереи. Место: Молдова, Кишинев. Автор: Ершов/РИА Новости." width="140" height="128"></a></figure><div class="rubric-list__article-text"><span class="rubric-list__article-id">#104110</span><time class="rubric-list__article-date" datetime="1980-09-01T00:00:00+03:00">01.09.1980</time><h1 class="rubric-list__article-title"><a href="/search/1152/104110.html?query=&area=all&country_id=15&event_from=1924-01-01&created_from=&region_id=&event_to=1991-12-31&created_to=&city_id=&orientation=all&order=desc" target="_blank" tabindex="-1">ЗДАНИЕ КАРТИННАЯ ГАЛЕРЕЯ</a></h1><p class="rubric-list__article-announce"><a href="/search/1152/104110.html?query=&area=all&country_id=15&event_from=1924-01-01&created_from=&region_id=&event_to=1991-12-31&created_to=&city_id=&orientation=all&order=desc" target="_blank" tabindex="-1">Здание Государственной картинной галереи.</a></p></div></article> | тут я сам разделил эти два куска, в оригинале нет ни пробела между ними, ни абзаца Код: <article class="rubric-list__article rubric-list__article_photo"><figure class="rubric-list__article-image"><a class="rubric-list__article-anchor" href="/search/1153/2528869.html?query=&area=all&country_id=15&event_from=1924-01-01&created_from=&region_id=&event_to=1991-12-31&created_to=&city_id=&orientation=all&order=desc" target="_blank"><img src="/images/old_thumbnail/252/88/2528869_thumbnail.jpg" alt='В детской киностудии "Флоричка"' title='В детской киностудии "Флоричка". Молдаваская ССР, Кишинев. Место: Молдова, Кишинев. Автор: Хворов/РИА Новости.' width="140" height="59"></a></figure><div class="rubric-list__article-text"><span class="rubric-list__article-id">#2528869</span><time class="rubric-list__article-date" datetime="1980-09-01T00:00:00+03:00">01.09.1980</time><h1 class="rubric-list__article-title"><a href="/search/1153/2528869.html?query=&area=all&country_id=15&event_from=1924-01-01&created_from=&region_id=&event_to=1991-12-31&created_to=&city_id=&orientation=all&order=desc" target="_blank" tabindex="-1">В детской киностудии "Флоричка"</a></h1><p class="rubric-list__article-announce"><a href="/search/1153/2528869.html?query=&area=all&country_id=15&event_from=1924-01-01&created_from=&region_id=&event_to=1991-12-31&created_to=&city_id=&orientation=all&order=desc" target="_blank" tabindex="-1">В детской киностудии "Флоричка". Молдаваская ССР, Кишинев.</a></p></div></article> | Я сохранил десятки html файлов (и в каждом html данные на 36 превьюшек), но скрипт записи ссылок из этих страниц не сработал (потому что ссылки там по-особому указаны), нужен скрипт который: 1) находил нужный кусок из ссылок, 2) переделывал их в нужный вид 3) скачивал фото по этим переделанным ссылкам 4) добавлял к названию этих файлов (ставя между добавляемыми секциями символ _) инфу из тега title с заменой символов неподдерживаемых в именах файлов и добавить в конец имени файла дату из тега </time> 1) <img src="/images/old_thumbnail/10/41/104110_thumbnail.jpg" [->] 10/41/104110 2) 10/41/104110 [+] https://visualrian.ru/images/old_preview/ВСТАВЛЯЕМ-СЮДА-РЕЗУЛЬТАТ-ПРЕДЫДУЩЕЙ-ОПЕРАЦИИ_preview.jpg [=] https://visualrian.ru/images/old_preview/10/41/104110_preview.jpg ИЛИ сразу делал из подобного: <img src="/images/old_thumbnail/10/41/104110_thumbnail.jpg" такое: https://visualrian.ru/images/old_preview/10/41/104110_preview.jpg Тогда пункт 2 не нужен 3) СКАЧИВАНИЕ ФАЙЛА 4) ПЕРЕИМЕНОВАНИЕ а) title="Здание Государственной картинной галереи. Место: Молдова, Кишинев. Автор: Ершов/РИА Новости." [->] Здание Государственной картинной галереи. Место - Молдова, Кишинев. Автор - Ершов - РИА Новости. б) <time class="rubric-list__article-date" datetime="1980-09-01T00:00:00+03:00">01.09.1980</time> [->] 01.09.1980 104110_preview.jpg [->] 104110_preview_Здание Государственной картинной галереи. Место - Молдова, Кишинев. Автор - Ершов - РИА Новости._01.09.1980.jpg С заменой символов, которые не поддерживает файловая система ":/ и ограничить длину названия файла, если она получается больше чем позволяет Windows. Символы "/\: и остальные запретные заменить на "пробел тире пробел", т.е. на " - " Взять инфу из тега превьюшки, пример: <img src="/images/old_thumbnail/252/88/2528869_thumbnail.jpg" нужная инфа там такая 252/88/2528869 и привести его к виду https://visualrian.ru/images/old_preview/252/88/2528869_preview.jpg !!! Встречаются исключения: Бывают превью с именем совсем другого вида и ссылка на "целое" фото для него другая! Поиск _ Библиотека изображений _РИА Новости_21.html <img src="/images/0001/8870/73/000188707338_RIAN-ID-6216837.jpg https://visualrian.ru/search/755/6216837.html?query=&area=all&country_id=15&event_from=1924-01-01&created_from=®ion_id=&event_to=1991-12-31&created_to=&city_id=&orientation=all&order=desc https://visualrian.ru/images/0001/8870/73/000188707344_RIAN-ID-6216837.jpg Код: <article class="rubric-list__article rubric-list__article_photo"><figure class="rubric-list__article-image"><a class="rubric-list__article-anchor" href="/search/755/6216837.html?query=&area=all&country_id=15&event_from=1924-01-01&created_from=&region_id=&event_to=1991-12-31&created_to=&city_id=&orientation=all&order=desc" target="_blank"><img src="/images/0001/8870/73/000188707338_RIAN-ID-6216837.jpg" alt="Логические игрушки" title="Молдавская ССР. Коллекция логических игрушек различных форм инженера и изобретателя Александра Ордынца. Место: Молдова, Кишинев. Автор: А. Хворов/РИА Новости." width="139" height="140"></a></figure><div class="rubric-list__article-text"><span class="rubric-list__article-id">#6216837</span><time class="rubric-list__article-date" datetime="1983-09-09T13:00:00+04:00">09.09.1983</time><h1 class="rubric-list__article-title"><a href="/search/755/6216837.html?query=&area=all&country_id=15&event_from=1924-01-01&created_from=&region_id=&event_to=1991-12-31&created_to=&city_id=&orientation=all&order=desc" target="_blank" tabindex="-1">Логические игрушки</a></h1><p class="rubric-list__article-announce"><a href="/search/755/6216837.html?query=&area=all&country_id=15&event_from=1924-01-01&created_from=&region_id=&event_to=1991-12-31&created_to=&city_id=&orientation=all&order=desc" target="_blank" tabindex="-1">Молдавская ССР. Коллекция логических игрушек различных форм инженера и изобретателя Александра Ордынца.</a></p></div></article></div> | Если в теге img, пример: <img src="/images/0001/8870/73/000188707338_RIAN-ID-6216837.jpg" превью встречается RIAN-ID, то ссылка на "целое" фото будет: ПРИМЕР 1 превью https://visualrian.ru/images/0001/8870/73/000188707338_RIAN-ID-6216837.jpg "целое" фото с водяными знаками https://visualrian.ru/images/0001/8870/73/000188707344_RIAN-ID-6216837.jpg ПРИМЕР 2 превью https://visualrian.ru/images/0001/8870/72/000188707232_RIAN-ID-6216834.jpg "целое" фото с водяными знаками https://visualrian.ru/images/0001/8870/72/000188707238_RIAN-ID-6216834.jpg Получается ЗАКОНОМЕРНОСТЬ, если прибавить к части названия файла (числу) этого превью (кусок названия до _RIAN-ID) +6, то получим имя файла с водянными знаками и следовательно ссылку на нужное фото: https://visualrian.ru/images/0001/8870/73/000188707338_RIAN-ID-6216837.jpg +6 https://visualrian.ru/images/0001/8870/73/000188707344_RIAN-ID-6216837.jpg ПРИМЕР 1 38+6=44 ПРИМЕР 2 32+6=38 Добавить обработку этих исключений, чтобы из <img src="/images/0001/8870/73/000188707338_RIAN-ID-6216837.jpg" получалось 000188707344_RIAN-ID-6216837_Молдавская ССР. Коллекция логических игрушек различных форм инженера и изобретателя Александра Ордынца. Место - Молдова, Кишинев. Автор - А. Хворов - РИА Новости._09.09.1983.jpg | Всего записей: 2341 | Зарегистр. 17-05-2010 | Отправлено: 13:20 23-12-2021 | Исправлено: anynamer, 13:27 23-12-2021 |
|