Raspar no duele
Así que veamos el sitio de las Ted Talks. Tienen una linda tabla con información de las charlas, por si querés hacer algo con ellas.
¿Y cómo sacás esa info? Haciendo "scraping" de la página. ¿Y cómo hacemos eso de forma indolora? Con Python y BeautifulSoup.
from BeautifulSoup import BeautifulSoup import urllib # Leemos toda la página data = urllib.urlopen('http://www.ted.com/talks/quick-list').read() # La parseamos soup = BeautifulSoup(data) # Busco la tabla con la data table = soup.findAll('table', attrs= {"class": "downloads notranslate"})[0] # Tomo las filas, salteando la primera rows = table.findAll('tr')[1:] items = [] # Para cada fila saco los datos # Y la guardo en algún lado for row in rows: cells = row.findAll('td') item = {} item['date'] = cells[0].text item['event'] = cells[1].text item['title'] = cells[2].text item['duration'] = cells[3].text item['links'] = [a['href'] for a in cells[4].findAll('a')] items.append(item)
¡Y ya está! Sorprendentemente indoloro.
No podés traducir scrap :)
I am a contrarian.
No sería más facil parsear el RSS?
http://www.ted.com/talks/rss
Sí, pero no están todas ahí, creo.
Have you tried Scrapy? It ahs some nice features to crawl and scrape web pages ;)
I have heard of scrapy, but have not tried it.