Academic year2023/24
CourseCOMPUTER SCIENCE
Code730AA
Credits6
PeriodSemester 2
LanguageItalian
Modules | Area | Type | Hours | Teacher(s) |
LABORATORIO DI WEB SCRAPING | INF/01 | LEZIONI | 48 | LAURA EMILIA MARIA RICCI unimap |
|
Obiettivi di apprendimento
Conoscenze
Obiettivo del corso è quello di introdurre le tecnologie che supportano il reperimento di dati provenienti da web e da blockchain, e quelle che consentono di analizzare i dati reperiti. Si considererà sia la tecnica dello web scraping che il reperimento di dati mediante API. Verranno utilizzati strumenti di analisi basati sul linguaggio Python. Verranno considerati numerosi use case con riferimento all'ecosistema delle criptomonete e, più in generale, delle blockchain.
Knowledge
The aim of the course is to introduce the technologies that support the retrieval of data from the web and from blockchain, and those that allow the analysis of the data retrieved. Both the web scraping technique and the retrieval of data via API will be considered. Analysis tools based on the Python language will be used.
Numerous use cases will be considered with reference to the ecosystem of cryptocurrencies
and, more generally, of blockchains.
Modalità di verifica delle conoscenze
Progetto Finale + Esame Orale
Assessment criteria of knowledge
Final Project + Oral Exam
Capacità
Saper reperire e analizzare dataset di grosse dimensioni, con particolare riferimento all'ecosistema delle blockchains e cryptocurrencies.
Skills
Retrieve and analyze big data, in particular data related to the cryptocurrencies and blockchain ecosystem.
Modalità di verifica delle capacità
Progetto finale+ Orale
Assessment criteria of skills
Final project+ Oral exam
Prerequisiti (conoscenze iniziali)
- Programmazione
- Algoritmica
- Reti
- Data Base
- Calcolo delle Probabilità e Statistica
Prerequisites
- Programmig
- Algorithms
- Computer Networks
- Data Base
- Statistics
Indicazioni metodologiche
- lezioni frontali con uso di slides
- materiale su sito web del corso su e-learning
- interazione: ricevimenti frontali e online, uso della posta elettronica,
Programma (contenuti dell'insegnamento)
Gli obiettivi del corso sono i seguenti
- introdurre strumenti per il recupero di dati da web o mediante API
- introdurre strumenti per l'analisi dei dati reperiti
PROGRAMMA
Python
- introduzione mediante esempi
Reperimento di Dati
- API: user authentication, costruzione di queries, esempi: Google Big Queries
- Web Scarping: analisi di pagine statiche : BeautifulSoup. Analisi di pagine dinamiche : Selenium
Analisi dei Dati
- Dati Tabellari, la libreria Pandas: Selezione di elementi per indice e per condizioni, Group_by, Merging e Concatenating, Pivoting, Visualizing: Matplotlib
- Data Clustering
- Dati Relazionali, la libreria NetworkX: graph models: random graphs, scale free networks, small worlds. Proprietà caratteristiche: diametro, centrality, clusetring coefficient,communities
Casi d'uso: Blockchain
- struttura delle transazioni (Bitcoin, Ethereum)
- blockchain exploreres
- NFT Markets
- Grafi di transazioni
Syllabus
The focus of the course is on
- introduction of tools for data gathering through web scraping or API
- introduction of tools for data analysis
Program
Python
Data Gathering
- API. user authentication, query construction, examples: Google Big Queries
- Web Scraping. analysis of static pages: BeautifulSoup. Analysis of dynamic pages: Selenium
Data Analysis
- Tabular Data, the Pandas library: Selecting elements by index and by conditions, Group_by, Merging e Concatenating, Pivoting, Visualizing: Matplotlib
- Data Clustering
- Relational Data, NetworkX. graph models: random graphs, scale-free networks, small worlds. Characteristic properties of a graph: diameter, centrality, clustering coefficient,communities
Use cases: Blockchain
- transaction structure (Bitcoin, Ethereum)
- blockchain explorers
- NFT Markets
- Grafi di transazioni
Bibliografia e materiale didattico
- I Notebook Jupyter saranno pubblicati sulla pagina del corso
- riferimento a eventuale materiale aggiuntivo sarà pubblicato sulla pagina del corso
Bibliography
Notebook Jupyter available on the course site
Indicazioni per non frequentanti
Saranno rese disponibili le slide e le registrazioni delle lezioni del corso.
Non-attending students info
Slides and recordings of the course lessons will be made available.
Modalità d'esame
Progetto + Orale
Assessment methods
Project + oral exam.
Altri riferimenti web
Le lezioni si svolgeranno in presenza
Teams Laboratorio Web Scraping - per avvisi, ricevimento, lezioni registrate
Moodle : Materiale del corso, es. slides, quiz, annunci,....
Additional web pages
Frontal lectures
Teams Laboratorio Web Scraping - recorded lesson, question time, ....
Moodle : Course didactic material, es. slides, quiz, notifications,....
Updated: 20/08/2023 12:02