Scheda programma d'esame
WEB SCRAPING LABORATORY
LAURA EMILIA MARIA RICCI
Academic year2023/24
CourseCOMPUTER SCIENCE
Code730AA
Credits6
PeriodSemester 2
LanguageItalian

ModulesAreaTypeHoursTeacher(s)
LABORATORIO DI WEB SCRAPINGINF/01LEZIONI48
LAURA EMILIA MARIA RICCI unimap
Obiettivi di apprendimento
Learning outcomes
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

  • introduction by examples

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 (BitcoinEthereum)
  • 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