Загрузите GEDCOM-файл на ВГД   [х]
Всероссийское Генеалогическое Древо
На сайте ВГД собираются люди, увлеченные генеалогией, историей, геральдикой и т.д. Здесь вы найдете собеседников, экспертов, умелых помощников в поисках предков и родственников. Вам подскажут где искать документы о павших в боях и пропавших без вести, в какой архив обратиться при исследовании родословной своей семьи, помогут определить по старой фотографии принадлежность к воинским частям, ведомствам и чину. ВГД - поиск людей в прошлом, настоящем и будущем!
Вниз ⇊

Web scrape

Как скачать без всякого труда (или с трудом, но небольшим; или с большим, но не очень) золотую рыбку из интернетовского пруда?
Ответ: я тоже не знаю (все). Но кое что все-таки из моих потуг может оказаться не вредным.

    Вперед →Страницы: 1 * 2 3 4 Вперед →
Модератор: abv
abv
Модератор раздела

abv

Красногорск, Моск.обл.
Сообщений: 2195
На сайте с 2004 г.
Рейтинг: 954
А вот был еще другой случай.
odintsovo.info
Список чинов Министерства Императорского двора 1910
Сайт предлагает просматривать сие богатство в виде слайд-шоу. Ну я и подумал, ничтоже сумняшеся, а оно нам надо?
Решил я эти сканы, числом 791, скачивать через Orbit Downloader - задаешь список для закачки

https://odintsovo.info/img/blo...ca_001.jpg
...
https://odintsovo.info/img/blo...ca_791.jpg

и идешь чай пить.
Ну думаю, успею ли попить-то?
Зря волновался - успел. Сутки Orbit качал, дв и то еще 41 скан осталось скачать.
Видать, нервно относится сайт к даунлоадерам типа Orbit.

Пришлось идти на поклон к Питону. Ну он, добрый, помог. Вот программа

import requests
import os.path
from user_agent import generate_user_agent
timeout = 45
base = 'https://odintsovo.info/'
for n in range(791):
nt = str(n+1).zfill(3)
if os.path.exists(f"{nt}.jpg"):
print(f"{nt}.jpg already exists")
else:
url=f"{base}img/blog-new/2018/61931/Spisok.chinov.Ministerstva.Imperatorskogo.dvora.5.sentjabrja.1910.1910.PDF_Stranica_{nt}.jpg"
headers = {'User-Agent': generate_user_agent(device_type="desktop", os=('mac', 'linux'))}
img = requests.get(url, timeout=timeout, headers=headers).content
with open(f"{nt}.jpg", 'wb') as handler:
handler.write(img)
print(f"{nt}.jpg written")

Ожидая худшего, предусмотрел даже многократный запуск (проверка того, что какие-то сканы уже скачаны, чтобы скачивать остальные).
Но и тут интуиция подвела - не понадобилась эта предосторожность.

Бог троицу любит. Фефекты фикции. Стал копировать скачанные файлы, смотрю - оказывается я еще в 2010 уже скачивал откуда-то, причем не постранично, а одним файлом pdf.
---
Персональная история русскоязычного мира
http://personalhistory.ru
info@personalhistory.ru
Новости из царской России
Яндекс-дзен https://zen.yandex.ru/id/5eee495659f4f25be9052961
medium.com https://medium.com/me/stories/public
Дневник https://forum.vgd.ru/5623/
https://1russia.wordpress.com/
Nikola

Nikola

Эстония
Сообщений: 6175
На сайте с 2006 г.
Рейтинг: 3038

abv написал:
[q]
Ссылку дайте, в качестве примера.
[/q]

https://pamyat-naroda.ru/warun...4b676620v1
https://pamyat-naroda.ru/warun...4b676620v1
---
Барчаны, Шаповаловы, Бражник (Украина), Ларюшины, Воронины (Рязанская обл.)
abv
Модератор раздела

abv

Красногорск, Моск.обл.
Сообщений: 2195
На сайте с 2004 г.
Рейтинг: 954

Nikola написал:
[q]

https://pamyat-naroda.ru/warun...4b676620v1
[/q]


Там адреса вида core-renderer-tiles.maps.yandex.net/tiles?l=map&v=21.12.21-1-b211218133230&x=39&y=18&z=6&scale=1&lang=ru_RU
[q]
https://core-renderer-tiles.ma...lang=ru_RU
[/q]

Это tiles - разбиение большой карты на кусочки, номера которых по x и y указываются в параметрах x=39 и y=18 (параметр z=6 отвечает, я думаю, за зум - масштаб), хотя там есть еще параметр scale=1

Можно нажать F12, там выбрать вкладку Network, выбрать нужные tiles и скачать их по одному (например, по правой кнопке мыши на строке очередного tile выбрать "Open in new tab"), откроется новая вкладка браузера с этим куском карты, сохранить его).
Соседние участки можно уже не в F12 искать, а в этой новой открытой вкладке браузера менять параметры x и y, как нужно.


---
Персональная история русскоязычного мира
http://personalhistory.ru
info@personalhistory.ru
Новости из царской России
Яндекс-дзен https://zen.yandex.ru/id/5eee495659f4f25be9052961
medium.com https://medium.com/me/stories/public
Дневник https://forum.vgd.ru/5623/
https://1russia.wordpress.com/
abv
Модератор раздела

abv

Красногорск, Моск.обл.
Сообщений: 2195
На сайте с 2004 г.
Рейтинг: 954
Лужу, паяю, сайты скачаю!
А вот был еще другой случай.
http://historypenza.ru/imennoj-ukazatel/ Именной указатель священно-церковно-служителей пензенской губернии 1866-1917
На сайте - список из 23000+ персон, да попробуй скачай (а хотя бы и не скачай, а просто выбери нужную страницу или найди нужную фамилию).
Ну пришлось применить Python+Selenium.
Вроде помогло - программа скачивает порциями по 100 записей (каждая порция примерно за минуту-полторы). Весь процесс займет 4-5 часов.
Получится файл в виде таблицы html.
Спешу поделиться - прилагаю первые три порции - 300 персон.

P.S. Докладываю обстановку. Не понравилось сайту (и, возможно, программе тоже) четырехчасовое сидение. Пришлось добавить в программу возможность повторной закачки и докачки. Для этого разделил один выходной файл на 232 - каждую порцию в 100 персон вывожу отдельно. При повторном запуске программа сначала проверяет существование файлов с номером порции, и скачивает, только если такой порции еще в виде файла нет. Это помогло закачать все 23144 записи за два вызова программы (1 прогон - порции 1-88, 2-й - остальные).

Если кому сильно надо скачать данные с этого сайта или с какого другого - обращайтеся, поможем. Не за здорово живешь, конечно. Но не обидим, однозначно.

04.09.2023 Кстати, о птичках. Сделал эту работу еще раз, забыв, что это уже было
https://forum.vgd.ru/post/5625/125597/p4692533.htm#pp4692533
Но все равно оказалось полезно, т.к. ПО за эти два года изменилось (Selenium 4), и программу пришлось малость обновить, но хуже, вроде, не стало.


Прикрепленный файл (result_.html, 58448 байт)
---
Персональная история русскоязычного мира
http://personalhistory.ru
info@personalhistory.ru
Новости из царской России
Яндекс-дзен https://zen.yandex.ru/id/5eee495659f4f25be9052961
medium.com https://medium.com/me/stories/public
Дневник https://forum.vgd.ru/5623/
https://1russia.wordpress.com/
Лайк (1)
Михаха

Михаха

Сообщений: 4161
На сайте с 2008 г.
Рейтинг: 3980
Ура! Нашел разбирающегося в тексте, который появляется при нажатии F12.
На форуме регулярно появляются желающие узнать "закрытый" адрес награжденного в наградных листах.
На приведенном примере в пункте 9 закрыт плашкой следующий текст: "Орловская обл., Орловский р-н, с. Бахлансвск"
Важный для многих вопрос: как прочитать закрытый планкой адрес?
В принципе, если разберетесь, то этой услугой можно даже торговать.
Если планка выставляется после загрузки полного документа из базы, то можно ли отключить эту ветку алгоритма?
Если документ хранится в базе в двух вариантах, то как от варианта с плашкой перейти к полному варианту?

Прикрепленный файл: Пример с сайта.jpg
Лайк (2)
abv
Модератор раздела

abv

Красногорск, Моск.обл.
Сообщений: 2195
На сайте с 2004 г.
Рейтинг: 954
Там на Помазнев Василий Трофимович выскакивает 28 ссылок, да в каждой по нескольку документов.
Дайте конкретную ссылку на случай "закрытого планкой адреса".
---
Персональная история русскоязычного мира
http://personalhistory.ru
info@personalhistory.ru
Новости из царской России
Яндекс-дзен https://zen.yandex.ru/id/5eee495659f4f25be9052961
medium.com https://medium.com/me/stories/public
Дневник https://forum.vgd.ru/5623/
https://1russia.wordpress.com/
Михаха

Михаха

Сообщений: 4161
На сайте с 2008 г.
Рейтинг: 3980
abv
Модератор раздела

abv

Красногорск, Моск.обл.
Сообщений: 2195
На сайте с 2004 г.
Рейтинг: 954
https://cdnc.pamyat-naroda.ru/...000181.jpg

Думаю, картинка с такой закраской поля "Пост. адрес" приходит с сервера, а не на клиенте планка вставляется.
Это логично и с точки зрения скорости работы сайта.
Картинки в данном случае там хранятся по адресу https://cdnc.pamyat-naroda.ru/podvig/Z/001/033-0682524-0439 , который непосредственно недоступен, только конкретные адреса картинок.
Возня какая-то с секретностью там есть, но она касается не планок, а инф. с номерами ящиков в ЦАМО.
[q]
function setSecrecy() {
$('.js__hero-card-doc-not-pub__desc').html('');
[/q]

[q]
$('.js__hero-card-doc-not-pub__desc').html('');
$('.js__hero-card-doc-not-pub__desc').append('Запись в галерее Дорога памяти');
$('.js__hero-card-doc-not-pub__desc').append('Фонд: ' + docInfo.nomer_fonda + '');
$('.js__hero-card-doc-not-pub__desc').append('Опись: ' + docInfo.nomer_opisi + '');
$('.js__hero-card-doc-not-pub__desc').append('Дело: ' + docInfo.nomer_dela + '');
$('.js__hero-card-doc-not-pub__desc').append('' + docInfo.shkaf_i_yaschik + '');
$('.js__hero-card-doc-not-pub__desc').append('Шкаф: ' + docInfo.shkaf_number + '');
$('.js__hero-card-doc-not-pub__desc').append('Ящик: ' + docInfo.box_number + '');
$('.js__hero-card-doc-not-pub__desc').append('Дело: ' + docInfo.storage_number + '');
[/q]

Прикрепленный файл: 00000181.jpg
---
Персональная история русскоязычного мира
http://personalhistory.ru
info@personalhistory.ru
Новости из царской России
Яндекс-дзен https://zen.yandex.ru/id/5eee495659f4f25be9052961
medium.com https://medium.com/me/stories/public
Дневник https://forum.vgd.ru/5623/
https://1russia.wordpress.com/
abv
Модератор раздела

abv

Красногорск, Моск.обл.
Сообщений: 2195
На сайте с 2004 г.
Рейтинг: 954
Юстас Алексу - информация к размышлению "Как скачать полный комплект епархиальных ведомостей любимой губернии" https://forum.vgd.ru/post/5625/125597/p4036021.htm#pp4036021
Если кто слышал звон, то теперь будет знать, где он.
---
Персональная история русскоязычного мира
http://personalhistory.ru
info@personalhistory.ru
Новости из царской России
Яндекс-дзен https://zen.yandex.ru/id/5eee495659f4f25be9052961
medium.com https://medium.com/me/stories/public
Дневник https://forum.vgd.ru/5623/
https://1russia.wordpress.com/
Лайк (1)
abv
Модератор раздела

abv

Красногорск, Моск.обл.
Сообщений: 2195
На сайте с 2004 г.
Рейтинг: 954
А вот еще один был, помнится, случай.
gwar.mil.ru
[q]
"Первая мировая война – Министерство обороны РФ и Корпорация ЭЛАР представляют крупнейший в мире Интернет-портал подлинных документов о Первой мировой 1914-1918."
[/q]


Посмотрел я на это чудо и не знаю, то ли плакать, то ли смеяться. Ну мы же оптимисты, будем смеяться, а если нельзя, - посмеиваться.
[q]
Да здравствуют советские микросхемы - самые крупные микросхемы в мире"
[/q]


Захотелось мне, к примеру, найти все карточки по первой мировой, где селение Миловице (что сейчас в Чехии) задействовано, как место события. Это мне нужно, чтобы найти (и исправить, если они неточно написаны) фамилии всех, захороненных на кладбище лагеря военнопленных 1914-1918 в Миловице. См. проект https://forum.vgd.ru/5624/128495/all.htm?a=stdforum_view&o=

Набираю я, значится, на сайте https://gwar.mil.ru/heroes/ запрос event_place=миловице
А мне в ответ - бум-с, 185 страниц, на каждой по 10 персон, да еще не по алфавиту. Листать - не перелистать.
Ну что тут скажешь, ЭЛАР свое дело туго знает (и знает также себе цену) - работает "по-крупному", на такие мелочи, как удобство населения, недосуг ему отвлекаться.

Бедному крестьянину надо как-то изворачиваться.
Сбацал я программку, задаешь ей тот запрос, который предназначен сайту gwar.mil.ru. Например, как в данном случае - event_place=миловице, или какой другой, который на ум взбредет. Ну программе деваться некуда, вынуждена она этот запрос отрабатывать - скачивать все страницы по одной и формировать выходную таблицу, сохраняя ее на диске.
А там уж, делай, что хошь - сортируй по ФИО, фильтруй (базар) - и никакого базара.

А то отвык я уже от такого "удобства" - во дворе. Чай - не дворовый мальчик, да и вообще уже не мальчик (с пальчик) как-никак.
---
Персональная история русскоязычного мира
http://personalhistory.ru
info@personalhistory.ru
Новости из царской России
Яндекс-дзен https://zen.yandex.ru/id/5eee495659f4f25be9052961
medium.com https://medium.com/me/stories/public
Дневник https://forum.vgd.ru/5623/
https://1russia.wordpress.com/
Лайк (3)
    Вперед →Страницы: 1 * 2 3 4 Вперед →
Модератор: abv
Вверх ⇈