1461
Comment:
|
2064
|
Deletions are marked like this. | Additions are marked like this. |
Line 30: | Line 30: |
== Terminale == === curl === {{{ curl "http://www.example.com" }}} esegue una GET e ne stampa l'output {{{ curl "http://www.example.com" > out.html }}} ora l'output viene reindirizzato sul file ''out.html'' === wget === {{{ wget "http://www.example.com/index.html" }}} salva in contenuto in ''index.html'' {{{ wget -r "http://www.example.com/" }}} salva '''tutto''' il contenuto del sito nella directory corrente === Python === {{{ python3 script.py }}} esegue uno script {{{ python3 script.py > out.txt }}} esegue uno script e ne salva l'output in ''out.txt'' |
Costruzione Utensili
La Cultura è la nostra Natura, siamo cacciatori e raccoglitori in un mondo di dati.
Prerequisiti
- Un'idea vaga di HTML
- Saper scrivere, o anche solo leggere un qualsiasi linguaggio
Programma
Serie di pomeriggi di sperimentazione libera, segue workshop rivolto al pubblico.
Temi
Ancora da definire, ma a grandi linee:
- Orientarsi con l'inspector del Browser
- Rudimenti di web scraping con Python:
- GET e fake-user agent con requests
- Beautiful-soup e/o lxml per il parsing delle pagine
- Web spider con scrapy
- wget e qualcosa di bash?
Riferimenti Sparsi
Terminale
curl
curl "http://www.example.com"
esegue una GET e ne stampa l'output
curl "http://www.example.com" > out.html
ora l'output viene reindirizzato sul file out.html
wget
wget "http://www.example.com/index.html"
salva in contenuto in index.html
wget -r "http://www.example.com/"
salva tutto il contenuto del sito nella directory corrente
Python
python3 script.py
esegue uno script
python3 script.py > out.txt
esegue uno script e ne salva l'output in out.txt
Codice
- Stampa l'elenco degli spazi di Macao:
1 #!/usr/bin/env python3 2 import requests 3 from bs4 import BeautifulSoup 4 5 url = "http://www.macaomilano.org/spip.php?rubrique18" 6 r = requests.get(url) 7 page = r.text 8 9 soup = BeautifulSoup(page, "html.parser") 10 11 h2s = soup.findAll("h2") 12 spazi = [h2.text for h2 in h2s] 13 14 print("\n".join(spazi))
- Fake user-agent: