python:webscraping
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| python:webscraping [2024/02/05 18:20] – [Módulo bs4] alberto | python:webscraping [2024/02/05 19:00] (actual) – [Encontrar elementos] alberto | ||
|---|---|---|---|
| Línea 110: | Línea 110: | ||
| También puede usarse el parseador ' | También puede usarse el parseador ' | ||
| + | |||
| + | ==== Encontrar elementos ==== | ||
| + | Para identificar los elementos que interesen en el HTML, usaremos los selectores CSS. \\ | ||
| + | Para obtener estos elementos usaremos el método **.select()**\\ | ||
| + | |||
| + | {{ : | ||
| + | |||
| + | Se pueden utilizar varios patrones de selectores para realizar búsquedas más sofisticadas, | ||
| + | |||
| + | El método **.select** devuelve una lista de objetos tipo //tag//, que es como BeautifulSoup representa los elementos HTML. Pueden ser pasados a string sin problemas con la función str(). \\ | ||
| + | |||
| + | Los elementos tipo " | ||
| + | |||
| + | También es posible obtener el texto que se encuentra asociado a un elemento HTML (el que aparece en la web) a través del método **.getText()**. | ||
| + | |||
| + | Suponemos el siguiente código HTML | ||
| + | <code html> | ||
| + | <!-- This is the example.html example file. --> | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | inventwithpython.com"> | ||
| + | <p class=" | ||
| + | <p>By <span id=" | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | Podemos buscar elementos del siguiente modo, directamente en la terminal de python: | ||
| + | <code python> | ||
| + | >>> | ||
| + | >>> | ||
| + | >>> | ||
| + | >>> | ||
| + | >>> | ||
| + | <class ' | ||
| + | >>> | ||
| + | 1 | ||
| + | >>> | ||
| + | <class ' | ||
| + | >>> | ||
| + | '< | ||
| + | >>> | ||
| + | 'Al Sweigart' | ||
| + | >>> | ||
| + | {' | ||
| + | >>> | ||
| + | >>> | ||
| + | '< | ||
| + | inventwithpython.com"> | ||
| + | >>> | ||
| + | ' | ||
| + | >>> | ||
| + | '<p class=" | ||
| + | >>> | ||
| + | 'Learn Python the easy way!' | ||
| + | >>> | ||
| + | '< | ||
| + | >>> | ||
| + | 'By Al Sweigart' | ||
| + | </ | ||
| + | |||
| + | ==== Obtener datos de atributos de elementos ==== | ||
| + | Para obtener fácilmente los valores de los atributos de un elemento (objeto tipo tag), podemos usar el método **get()**. Se le pasa el string del nombre de un atributo, y devuelve su valor. Vemos un ejemplo en la consola de Python: | ||
| + | <code python> | ||
| + | >>> | ||
| + | >>> | ||
| + | >>> | ||
| + | >>> | ||
| + | '< | ||
| + | >>> | ||
| + | ' | ||
| + | >>> | ||
| + | True | ||
| + | >>> | ||
| + | {' | ||
| + | </ | ||
| ===== Módulo selenium ===== | ===== Módulo selenium ===== | ||
python/webscraping.1707153643.txt.gz · Última modificación: por alberto
