Estoy tratando de hacer un web scraper que analizará una página web de publicaciones y extraerá los autores. La estructura del esqueleto de la página web es la siguiente:Web scraping de Python que implica etiquetas HTML con atributos
<html>
<body>
<div id="container">
<div id="contents">
<table>
<tbody>
<tr>
<td class="author">####I want whatever is located here ###</td>
</tr>
</tbody>
</table>
</div>
</div>
</body>
</html>
He estado tratando de utilizar BeautifulSoup y lxml hasta el momento de realizar esta tarea, pero no estoy seguro de cómo manejar las dos etiquetas div y etiqueta td porque tienen atributos. Además de esto, no estoy seguro de si debería confiar más en BeautifulSoup o lxml o una combinación de ambos. ¿Que debería hacer?
Por el momento, mi código es similar a lo que está abajo:
import re
import urllib2,sys
import lxml
from lxml import etree
from lxml.html.soupparser import fromstring
from lxml.etree import tostring
from lxml.cssselect import CSSSelector
from BeautifulSoup import BeautifulSoup, NavigableString
address='http://www.example.com/'
html = urllib2.urlopen(address).read()
soup = BeautifulSoup(html)
html=soup.prettify()
html=html.replace(' ', ' ')
html=html.replace('í','í')
root=fromstring(html)
que darse cuenta de que muchas de las declaraciones de importación puede ser redundante, pero me acaba de copiar cualquier momento que tuve en más archivo de origen.
EDITAR: Supongo que no dejé esto muy claro, pero tengo varias etiquetas en la página que quiero raspar.
Gracias, Alex. Tengo varios autores en la página, por lo que tendré varias etiquetas td. ¿Cómo puedo iterar sobre cada uno de ellos? – GobiasKoffi