Scheda programma d'esame
WEB SCRAPING LABORATORY
LAURA EMILIA MARIA RICCI
Academic year2022/23
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

Il focus del corso è come ottenere dati provenienti da web o da sistemi distribuiti, utilizzando sia 

API che  web scraping e come analizzarli. Verranno considerati numerosi use case con riferimento

all'ecosistema  delle criptomonete e, più in generale, delle blockchain.

Knowledge

Analysis of Big Data

Applications to the blockchain ecosystem

 

 

Modalità di verifica delle conoscenze

Progetto Finale + Esame Orale

Assessment criteria of knowledge

Final Project + oral exam

Capacità

Saper reperire e analizzare Big Data, con particolare riferimento all'ecosistema delle blockchains e cryptocurrencies.

Skills

Being able to log and analyse 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.

Basi di Dati.

Prerequisites

Programming.

Algorithmics.

Data Base.

Corequisiti

Reti di calcolatori

Co-requisites

Computer Networks

Programma (contenuti dell'insegnamento)

Il focus del corso è come ottenere dati provenienti da web o da sistemi distribuiti, utilizzando sia 

API che  web scraping e come analizzarli. Verranno considerati numerosi use case con riferimento

all'ecosistema  delle criptomonete e, più in generale, delle blockchain.

Il programma preliminare è il seguente:

Blockchain

  • struttura delle transazioni e blocchi di diversi protocolli di blockchain
    • Bitcoin, Ethereum, Steemit,…
    • grafi di transazioni
  • blockchain ecosystems: transazioni di exchange, external data gathering (e.g. twitter), channel networks

Reperimento  di dati da web

  • scraping: crawling e parsing di pagine web
  • reperimento di dati mediante API 

Analisi dei dati

  • statistica descrittiva e elementi di statistica inferenziale
  • strumenti per l’analisi di grafi
    • graph models: random graphs, scale free networks, small worlds 
    • proprietà e caratteristiche di un grafo (degree, centrality, clustering coefficient,..)
    • community detection, clustering

Laboratorio

  • Python by example
  • uso di API per il reperimento di dati dal web
    • user authentication, limitazioni, costruzione di queries
    • Google BigQuery
  • web scraping 
    • BeutifulSoup
  • librerie: Pandas, Numpy,ScyPy, Matplotlib
  • librerie per l'analisi di grafi: NetworkX
  • visualizzazione di grafi 
  • analisi di dati estratti da blockchain
    • transazioni
    • exchange services
    • smart contracts
    • NFT, Web-3

 

Syllabus

Blockchain

  • structure of transactions and blocks for different blockchain
    • Bitcoin, Ethereum, Steemit,…
    • transaction graphs
  • blockchain ecosystems:  exchange transactions, external data gathering (e.g. twitter), channel networks

Data logging

  • scraping: web crawling and parsing 
  • data logging through API

Data analysis

  • descriptive and inferential statistics
  • graph analysis
    • graph models: random graphs, scale free networks, small worlds 
    • graph properties (degree, centrality, clustering coefficient,..)
    • community detection, clustering

Laboratory

  • Python by example
  • APIfor logging data from the web
    • user authentication, limitazioni, costruzione di queries
    • Google BigQuery
  • web scraping 
    • BeutifulSoup
  • libraries: Pandas, Numpy,ScyPy, Matplotlib
  • libraries for graph analysis: NetworkX
  • graph visualization
  • blockchain data analysis
    • transactions
    • exchange services
    • smart contracts
    • NFT, Web-3

 

Bibliografia e materiale didattico

Slide del corso + Notebooks Jupiter

Modalità d'esame

Progetto + Orale

Assessment methods

Project + oral exam.

Updated: 06/01/2023 23:04