Articles of html parsing

html analizador python

Estoy tratando de analizar un sitio web. Estoy usando el módulo HTMLParser. El problema es que quiero analizar el primer después del comentario: , pero realmente no sé cómo hacerlo. He encontrado en la documentación que hay una función que se llama handle_comment , pero no he descubierto cómo usarla correctamente. Tengo los siguientes import […]

Análisis de datos html en la lista de python para su manipulación

Estoy tratando de leer en sitios web html y extraer sus datos. Por ejemplo, me gustaría leer en EPS (ganancias por acción) de los últimos 5 años de las empresas. Básicamente, puedo leerlo y puedo usar BeautifulSoup o html2text para crear un gran bloque de texto. Luego quiero buscar el archivo, he estado usando re.search, […]

Obtenga el html bajo una etiqueta usando htmlparser python

Quiero obtener el código HTML completo debajo de una etiqueta y usando HTMLParser. Actualmente puedo obtener los datos entre las tags y siguiendo mi código class LinksParser(HTMLParser): def __init__(self): HTMLParser.__init__(self) self.recording = 0 self.data = ” def handle_starttag(self, tag, attributes): if tag != ‘span’: return if self.recording: self.recording += 1 return for name, value in […]

Obtener el contenido de la tabla en BeautifulSoup

Tengo la siguiente tabla en un sitio web que estoy extrayendo con BeautifulSoup Esta es la url (también he adjuntado una imagen Idealmente, me gustaría tener a cada compañía en una fila en csv, sin embargo, lo estoy haciendo en diferentes filas. Por favor, vea la imagen adjunta. Me gustaría tenerlo como en el campo […]

BeautifulHoup y el documento HTML no válido

Estoy tratando de analizar el documento http://www.consilium.europa.eu/uedocs/cms_data/docs/pressdata/en/ecofin/acf8e.htm . Quiero obtener países y nombres al principio del documento. Aqui esta mi codigo import urllib import re from bs4 import BeautifulSoup url=”http://www.consilium.europa.eu/uedocs/cms_data/docs/pressdata/en/ecofin/acf8e.htm” soup=BeautifulSoup(urllib.urlopen(url)) attendances_table=soup.find(“table”, {“width”:850}) print attendances_table #this works, I see the whole table print attendances_table.find_all(“tr”) Obtuve el siguiente error: AttributeError: ‘NoneType’ object has no attribute ‘next_element’ […]

¿Cómo obtener un XPath de selenium webelement o de lxml?

Estoy usando selenium y necesito encontrar los XPaths de algunos elementos web de selenium. Por ejemplo: import selenium.webdriver driver = selenium.webdriver.Firefox() element = driver.find_element_by_xpath() elements = element.find_elements_by_xpath() for e in elements: print e.get_xpath() Sé que no puedo obtener el XPath del elemento en sí, pero ¿hay una buena manera de obtenerlo de todos modos? Intenté […]

Python HTMLParser: UnicodeDecodeError

Estoy usando HTMLParser para analizar las páginas que abro con urllib, y me estoy encontrando UnicodeDecodeError excepciones de UnicodeDecodeError al pasar algunas a HTMLParser . Intenté usar chardet para detectar las codificaciones y convertir a ascii , o utf-8 (los documentos no parecen decir lo que debería ser). la pérdida es aceptable, pero mientras las […]

BeautifulSoup -ing un sitio web con inicio de sesión y motor de búsqueda del sitio

Estoy intentando raspar los datos de la Organización Marítima Internacional ( https://gisis.imo.org/Public/PAR/Search.aspx ) sobre los ataques de embarcaciones de envío entre las fechas (“está entre” en el motor de búsqueda del sitio) 2002-01 -01, 2005-12-31. He usado bs4 y solicita módulos en python anteriormente para eliminar datos financieros de yahoo y datos meteorológicos de wunderground, […]

Cómo obtener varias clases en una consulta usando Beautiful Soup

Quiero encontrar td con class = “s” o class = “sb” en el siguiente html test15,774.04,481.05,444.06,615.06,858.0 test25,774.04,481.05,444.06,615.06,858.0 Estoy usando el siguiente código ahora mismo. Pero solo se puede obtener la clase igual a “S”. ¿Es posible obtener tanto “s” como “sb” en una consulta de búsqueda de sopa de Beautiful Soup? soup = BeautifulSoup(urllib2.urlopen(url).read(),”lxml”); for […]

eliminar ciertos atributos de las tags HTML

¿Cómo puedo eliminar ciertos atributos como id, estilo, clase, etc. del código HTML? Pensé que podía usar el módulo lxml.html.clean , pero resultó que solo puedo eliminar los atributos de estilo con Clean(style=True).clean_html(code) . Prefiero no usar expresiones regulares para esta tarea (los atributos podrían cambiar). Lo que me gustaría tener: from lxml.html.clean import Cleaner […]