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

Web scrape

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

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

abv

Красногорск, Моск.обл.
Сообщений: 2210
На сайте с 2004 г.
Рейтинг: 962
Я тут как-то думал-думал, и мысль меня посетила - а не замахнуться ли нам на Вильяма, понимаешь-ли, Шекспира?
shpl.ru
Хотим мы скачать, скажем
[q]
Вся Москва. Адресная и справочная книга... [по годам]. - М., 1875-. - Издательство: 1875-1881 гг. -
... на 1892 год : Год 21-й. - 1892. - 308 с., 774 стб., 1 л. пл. - Загл. вып. : Адрес-календарь г. Москвы.
http://elib.shpl.ru/ru/nodes/27260
Содержит 785 сканов
[/q]

или, еще того пуще
[q]
Россия. Министерство народного просвещения. Список лиц, служащих по ведомству Министерства народного просвещения ... [по годам]. - Пг., 1878-1916. - Загл. за ряд лет : Список лицам, служащим по ведомству Министерства народного просвещения ... .
... на 1907 год. - 1907. - VIII, 1266 с.
http://elib.shpl.ru/ru/nodes/70449
1290 сканов
[/q]

Удобной кнопки для скачивания нет. А вручную. скачивать по одной страничке - устанет рука, да и не кошерно это.

Выручает (меня) программа на Питоне, которой нужно сообщить два параметра:
  • node - это id издания (Напр., у "Всей Москвы 1892" - 27260, а у "Списка лицам МНП 1907" - 70449)
  • local_dir - путь к папке, в которую надо сохранить сканы

Программа создаст в указанном месте (local_dir) папку с именем node и запишет туда последовательно все сканы (каждый из которых, в свою очередь, тоже имеет свой id в системе учета shpl.ru, вот с этим именем будет записан скан, с расширением 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/
Лайк (2)
Nikola

Nikola

Эстония
Сообщений: 6181
На сайте с 2006 г.
Рейтинг: 3045
Полезно было бы так же получать карты с ОБД "Память народа"
---
Барчаны, Шаповаловы, Бражник (Украина), Ларюшины, Воронины (Рязанская обл.)
abv
Модератор раздела

abv

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

Nikola написал:
[q]
Полезно было бы так же получать карты с ОБД "Память народа"
[/q]

Что за карты? Ссылку дайте, в качестве примера.


---
Персональная история русскоязычного мира
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

Красногорск, Моск.обл.
Сообщений: 2210
На сайте с 2004 г.
Рейтинг: 962
А вот был еще другой случай.
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

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

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

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

abv

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

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

Красногорск, Моск.обл.
Сообщений: 2210
На сайте с 2004 г.
Рейтинг: 962
Лужу, паяю, сайты скачаю!
А вот был еще другой случай.
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)
Михаха

Михаха

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

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

abv

Красногорск, Моск.обл.
Сообщений: 2210
На сайте с 2004 г.
Рейтинг: 962
Там на Помазнев Василий Трофимович выскакивает 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/
Михаха

Михаха

Сообщений: 4160
На сайте с 2008 г.
Рейтинг: 3990
    Вперед →Страницы: 1 * 2 3 4 Вперед →
Модератор: abv
Вверх ⇈