10 KiB
Opracować w języku Haskell wyspecjalizowanego robota pobierającego dane z konkretnego serwisu.
Punkty: 80 (domyślnie - niektóre zadanie są trudniejsze, wówczas podaję osobno liczbę punktów)
Ogólne zasady:
- pobieramy informacje (metadane) o plikach PDF, DjVU, JPG itp, ale nie same pliki,
- nie pobierajmy całego serwisu, tylko tyle, ile trzeba, by pobrać metadane o interesujących nas zasobach,
- interesują nas tylko teksty polskie, jeśli nie jest to trudne, należy odfiltrować publikacje obcojęzyczne,
- staramy się ustalać datę z możliwie dużą dokładnością.
Sposób pracy:
- Pobrać Haskell Stack
curl -sSL https://get.haskellstack.org/ | sh -s - -d ~/bin
Na fizycznych komputerach wydziałowych są błędnie ustawione prawa dostępu na dyskach sieciowych, Haskell Stack musi działać na fizycznym dysku:
rm -rf /mnt/poligon/.stack
mkdir /mnt/poligon/.stack
mv ~/.stack ~/.stack-bak # gdyby już był... proszę się nie przejmować błędem
ln -s /mnt/poligon/.stack ~/.stack
- Pobrać repozytorium:
git clone https://git.wmi.amu.edu.pl/filipg/twilight-library.git
- Wypchnąć na początek do swojego repozytorium (trzeba sobie najpierw założyć to repozytorium na https://git.wmi.amu.edu.pl)
cd twilight-library
git remote set-url origin git@git.wmi.amu.edu.pl:YOURID/twilight-library
git push origin master
git remote add mother git://gonito.net/twilight-library
- Zobacz, czy przykładowy robot dla strony z „Alamanachem Muszyny” działa:
~/bin/stack install # może trwać długo za pierwszym razem
~/bin/stack exec almanachmuszyny
W razie problemów z instalacją:
sudo apt install libpcre3 libpcre3-dev
Opracuj swojego robota wzorując się na pliku
almanachmuszyny.hs
. (Ale dodaj swój plik, nie zmieniajalmanachmuszyny.hs
!)Dopisz specyfikację swojego robota do
shadow-library.cabal
.Pracuj nad swoim robotem, uruchamiaj go w następujący sposób:
~/bin/stack install
~/bin/stack exec mojrobot
(Tzn. nie nazywaj go „mojrobot”, tylko użyj jakieś sensownej nazwy.)
Jeśli publikacja (np. pojedynczy numer gazety) składa się z wielu plików, powinien zostać wygenerowany jeden rekord, w
finalUrl
powinny znaleźć się URL do poszczególnych stron (np. plików JPR) oddzielone//
.Po zakończeniu prac prześlij mejla do prowadzącego zajęcia z URL-em do swojego repozytorium.
Lista serwisów do wyboru (na każdy serwis 1 osoba):
- Teksty Drugie
- Archiwum Inspektora Pracy
- Medycyna Weterynaryjna — również historyczne zasoby od 1945 roku, 120 punktów
- Polskie Towarzystwo Botaniczne — wszystkie dostępne zdigitalizowane publikacje!, 130 punktow
- Wieści Pepowa — nie pominąć strony nr 2 z wynikami, 110 punktów
- Czasopismo Kosmos
- Czasopismo Wszechświat
- Czasopisma polonijne we Francji — najlepiej w postaci PDF-ów, jak np. https://argonnaute.parisnanterre.fr/medias/customer_3/periodique/immi_pol_lotmz1_pdf/BDIC_GFP_2929_1945_039.pdf, 220 punktów
- Muzeum Sztuki — czasopisma, 220 punktów, publikacje, teksty, czasopisma, wycinki
- Wiadomości Urzędu Patentowego
- Czas, czasopismo polonijne, 140 punktów S.G.
- Stenogramy Okrągłego Stołu, 110 punktów
- Nasze Popowice
- Czasopisma entomologiczne
- Wiadomości matematyczne, 120 punktow
- Alkoholizm i Narkomania
- Czasopismo Etyka, O.K.
- Skup makulatury, 250 punktów
- Hermes i https://chomikuj.pl/hermes50-2, 250 punktów
- E-dziennik Województwa Mazowieckiego 150 punktów
- Czasopismo Węgiel Brunatny
- Gazeta GUM
- Nowiny Andrychowskie
- Kawęczyniak
- Zbór Chrześcijański w Bielawia
- Gazeta Rytwiańska
- Nasze Popowice
- Echo Chełmka
- Głos Świdnika 100 punktów
- Aneks 90 punktów
- Teatr Lalel
- Biuletyn Bezpieczna Chemia
- Głos Maszynisty
- Kultura Paryska, całe archiwum z książkami i innymi czasopismami, 180 punktów
- Gazeta Fabryczna - Kraśnik 120 punktów
- Artykuły o Jujutsu
- Wycinki o Taekwon-Do
- Materiały o kolejnictwie 180 punktów
- Centralny Instytut Ochrony Pracy, znaleźć wszystkie publikacje typu http://archiwum.ciop.pl/44938, wymaga trochę sprytu 130 punktów
- Biblioteka Sejmowa - Zasoby Cyfrowe, 200 punktów
- Elektronika Praktyczna, te numery, które dostępne w otwarty sposób, np. rok 1993
- Litewska Akademia Nauk, tylko materiały w jęz. polskim, takie jak np. https://elibrary.mab.lt/handle/1/840, 170 punktów
- Litewska Biblioteka Cyfrowa, wyłuskać tylko materiały w jęz. polskim, 190 punktów
- Czasopisma Geologiczne, 120 punktów
- Czasopisma PTTK, 120 punktów
- Czasopisma Polskiego Towarzystwa Dendrologicznego, 100 punktów
- Kilka przedwojennych książek
- Historia polskiej informatyki - wyjątkowo bez datowania
- Zeszyty Formacyjne Katolickiego Stowarzyszenia „Civitas Christania”, tylko niektóre pliki można zdatować
- Józef Piłsudski Institute of America - 220 punktów
- Prasa podziemna — Częstochowa, również ulotki i inne materiały skanowane - 180 punktów
- Tajemnica Atari, plik ZIP z DjVu
F.A.Q.
P: Nie działają strony z protokołem https, co zrobić?
O: Trzeba użyć modułu opartego na bibliotece curl. Paczka Ubuntu została zainstalowana na komputerach wydziałowych. Na swoim komputerze możemy zainstalować paczkę libcurl4-openssl-dev, a następnie można sobie ściągnąć wersję twilight-library opartą na libcurl:
git fetch git://gonito.net/twilight-library withcurl
git merge FETCH_HEAD