sul "legale" non so neanche io: verifica! (anche se penso che di per sè si possa... bisogna vedere poi come registri/usi i dati, magari)

per il come:
1) leggi la pagina
2) la "parsi"
3) gestisci i dati

per ordine...
punto 1: vedi (anche l'esempio) di questa funzione (fsockopen)