Wstęp do Informatyki - Wykład 14

Slides:



Advertisements
Podobne prezentacje
Co to jest Pulpit eTwinning?
Advertisements

20041 Projektowanie dynamicznych witryn internetowych Paweł Górczyński ASP 3.0.
Wprowadzenie do języka skryptowego PHP
Funkcje wyszukiwania i odwołań
Dodawanie i usuwanie oprogramowania
Zarządzanie konfiguracją Doskonalenie Procesów Programowych Wykład 6 Copyright, 2001 © Jerzy.
Tablice.
Wykład 2: Systemy klasy C.A.T. (Computer-Aided Translation)
Tablice jednowymiarowe 1
SO – LAB3 Wojciech Pieprzyca
GeoTrackerPast Web tracking in 4 dimensions. Informacje Temat: System wyszukiwania haseł w Internecie(?) Promotor: dr Mikołaj Morzy Skład: – Tomasz Szymanowski.
PHP wprowadzenie.
Kurs HTML.
Piotr Kasprzyk Instytut Informatyki Politechniki Śląskiej
JAK ZROBIĆ STRONE INTERNETOWĄ
Strategia skutecznego szukania informacji w Internecie
Podstawy programowania
eFaktura w DHL Express Poland
Podstawy programowania II
Podstawy programowania
Wypożyczalnia NARZĘDZI
Przygotowanie kontentu stron WWW
Instrukcja logowania do Platformy E-Learningowej WSFiZ Instrukcja dla nauczycieli.
Tworzenie strony internetowej krok po kroku.
Jak się czegoś nauczyć? Pomysły na dziś i jutro! Bartosz Męcik.
Uniwersytet Mikołaja Kopernika Wydział Fizyki, Astronomii i Informatyki Stosowanej Podyplomowe Studium Programowania i Zastosowań Komputerów Paweł Abramczyk.
Przygotował: Paweł Ziaja
Technologie internetowe II
Systemy wejścia i wyjścia Michał Wrona. Co to jest system wejścia i wyjścia? Pobierania informacji ze źródeł danych, zdolnych przesyłać sekwencje bajtów,
DZIEŁ Z KATALOGU PUBLIKACJI
Tworzenie stron internetowych www World Wide Web
Przekazywanie parametrów do funkcji oraz zmienne globalne i lokalne
Microsoft Office Publisher
Wprowadzenie do HTML Informatyka Cele lekcji: Wiadomości:
Obsługa klienta — narzędzie uaktualniające Dla użytkowników produktów firmy Novell.
W W W Łukasz Stochniał.
Korespondencja seryjna
Nieograniczone źródło informacji
Wprowadzenie do spisów treści j a następnie naciśnij klawisz F5 lub kliknij pozycję Pokaz slajdów > Od początku, aby rozpocząć kurs. Na pasku komunikatów.
Temat 2: Instalacja Apache, PHP i bazy danych MySQL.
Treści multimedialne - kodowanie, przetwarzanie, prezentacjaOdtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Instrukcja obsługi portalu Informacyjno-Edukacyjnego Miasta Oleśnicy
Podstawy języka skryptów
Biblioteki cyfrowe i repozytoria
PHP Zmienne Damian Urbańczyk. Czym są zmienne? Zmienne zajmują pewien obszar pamięci, aby przechować pewne dane. W przypadku PHP, zmienne stosuje się.
Jak wykonać prosty licznik odwiedzin strony internetowej?
Iga Lewandowska I EMII MU
Proste obliczenia w arkuszu kalkulacyjnym
Temat Prezentacji : ZNACZNIKI META TAGS wyk.H. Kozłowski.
© 2012 Microsoft Corporation. Wszelkie prawa zastrzeżone. Dodawanie kontaktu Lista Kontakty upraszcza komunikację i umożliwia sprawdzenie statusu obecności.
Edytory tekstowe stron WWW
Projektowanie postaci formularza:
Podstawy programowania
Informatyka – szkoła gimnazjalna – Scholaris - © DC Edukacja Tworzenie stron WWW w programie Microsoft FrontPage Informatyka.
Wykład 2 Programowanie obiektowe. Programowanie obiektowe wymaga dobrego zrozumienia działania funkcji definiowanych przez użytkownika, w ten sposób będziemy.
Wyszukiwanie informacji w Internecie Marcin Wojnowski.
Dokumentacja programu komputerowego i etapy tworzenia programów.
PHP jest językiem skryptowym służącym do rozszerzania możliwości stron internetowych. Jego składnia jest bardzo podobna do popularnych języków programowania.
Microsoft® Office Word
Bazy CINAHL Wyszukiwanie zaawansowane Przewodnik
W prezentacji przedstawione zostaną możliwości i zalety korzystania z dziennika elektronicznego oraz instrukcja obsługi tego programu.
Przewodnik
Hipertekst HTML WWW.
Visual Basic for Applications
Wskaźniki Elżbieta Labocha.
Tworzenie stron WWW w programie Microsoft FrontPage
Instrukcja obsługi panelu E-gwarancji
Przeczytaj wszystko na temat wiadomości programu Microsoft SharePoint
Platforma LearningApps
Zapis prezentacji:

Wstęp do Informatyki - Wykład 14 Web scraping

Motywacja działań W wielu przypadkach chcielibyśmy mieć program, który automatycznie pobiera z Internetu różne treści, np.: informacje kontaktowe dane hoteli tekst (do analiz lingwistycznych) oceny produktów (do analiz marketingowych) ...

Python - pobranie treści strony import urllib2 response = urllib2.urlopen("http://wwsse.pl") page_source = response.read() print page_source test.py

Python - pobranie treści strony Tak pobrana strona jest przechowywana w zmiennej stringowej page_source w formie HTML. Co możemy dalej zrobić z tym tekstem? Możemy go przeszukać!

Python - co wypisze ten program? import urllib2, re response = urllib2.urlopen("http://wwsse.pl") page_source = response.read() print re.findall(r"https?://[a-z\.]+", page_source) test.py

Pobieranie danych z wielu podstron Spróbujmy czegoś innego. Wyzwanie - znaleźć jak najwięcej nazw telewizorów dostępnych na rynku. Pomysł - trzeba wykorzystać portal ceneo.pl. Wyszukajmy na nim telewizorów. Sprawdźmy, jaki adres mają poszczególne podstrony:

Pobieranie danych z wielu podstron

Pobieranie danych z wielu podstron Pobierzmy jedną podstronę i zobaczmy, gdzie szukać nazw telewizorów: import urllib2, re response = urllib2.urlopen("http://www.ceneo.pl/;szukaj-telewizor;0020-30-0-0-3.htm") page_source = response.read() print page_source test.py

Pobieranie danych z wielu podstron ... data-source-tag="">LG 43LH500T</a> </strong> wyjście

Pobieranie danych z wielu podstron Widzimy, że nazwa telewizora występuje zawsze po data-source-tag="">, a przed </a> Stwórzmy odpowiednie wyrażenie regularne:

Pobieranie danych z wielu podstron import urllib2, re response = urllib2.urlopen("http://www.ceneo.pl/;szukaj-telewizor;0020-30-0-0-3.htm") page_source = response.read() print re.findall(r'data-source-tag="">([A-Za-z0-9 ]+)</a>', page_source) test.py Funkcja findall zwróci tylko tekst “złapany” w nawiasy, bez kontekstu.

Pobieranie danych z wielu podstron Dokończmy zatem skrypt. Ściągnijmy 5 podstron, wyciągnijmy z nich nazwy telewizorów. Wyciągnięte nazwy będziemy zapisywać na liście telewizory. Na koniec, zamienimy tę listę na zbiór (set), aby pozbyć się możliwych duplikatów.

Pobieranie danych z wielu podstron - wersja końcowa import urllib2, re telewizory = [] for i in range(5): response = urllib2.urlopen("http://www.ceneo.pl/;szukaj-telewizor;0020-30-0-0-%d.htm" % i) page_source = response.read() telewizory += re.findall(r'data-source-tag="">([A-Za-z0-9 ]+)</a>', page_source) print set(telewizory) test.py

Piękna zupa

Piękna zupa

Beautiful Soup Jest to ciekawy moduł Pythonowy do parsowania HTML-a. Spójrzmy na oficjalny tutorial: https://www.crummy.com/software/BeautifulSoup/bs4/doc/

Budowanie korpusów tekstów Korzystając ze wspomnianych narzędzi możemy zbudować korpusy tekstów na potrzeby badań lingwistycznych. Przykład - CommonCrawl: http://commoncrawl.org/2016/10/september-2016-crawl-archive-now-available/

Budowanie korpusów tekstów Szczególnie cennym zasobem lingwistycznym są tzw. korpusy równoległe. Są to zbiory par zdań postaci (zdanie źródłowe, zdanie przetłumaczone). Aby skonstruować korpus równoległy można ręcznie przetłumaczyć tekst…. ...ale można też użyć metod NLP.

Budowanie korpusów tekstów Po pierwsze, należy znaleźć teksty wraz z tłumaczeniami. Gdzie ich szukać? wielojęzyczne strony internetowe, instrukcje obsługi, patenty, tłumaczenia dokumentów, ... W ten sposób uzyskujemy zbiór par dokumentów. Taki zbiór nazywa się często korpusem porównywalnym (comparable corpus).

Budowanie korpusów tekstów Następnym krokiem jest podział tekstów na zdania (segmenty), czyli proces segmentacji. Najlepiej użyć do tego splittera opartego na tzw. regułach SRX (np. https://github.com/emjotde/eserix) Otrzymujemy wtedy dwa ciągi zdań - w języku źródłowym i docelowym. Ostatnim krokiem jest tzw. urównoleglenie. Najlepsze do tego może okazać się narzędzie hunalign (http://mokk.bme.hu/en/resources/hunalign/)

Pobieranie wideo z YouTube Istnieje bardzo ciekawy moduł Pythona, który służy do pobierania filmików z popularnego serwisu YouTube. Moduł nazywa się PyTube.

Pobranie wideo z YouTube import pytube yt = pytube.YouTube("https://www.youtube.com/watch?v=J1j_4BmsqUM") video = yt.filter('mp4')[-1] video.download(r"C:\") test.py

Pobranie wideo z YouTube Funkcja filter zwraca listę filmików w zadanym formacie. Sztuczka [-1] służy do wybrania ostatniego filmiku, czyli tego w najwyższej jakości.

Dziękuję za uwagę!