Prerrequisitos: Beautifulsoup
Beautifulsoup es un poderoso módulo de Python que se utiliza para el web scraping. Este artículo explica cómo se puede buscar un texto específico dentro de una etiqueta determinada.
Acercarse
- Módulo de importación
- Pasar la URL
- Página de solicitud
- Especifique la etiqueta a buscar
- Para Buscar por texto dentro de la etiqueta, debemos verificar la condición con la ayuda de la función de string.
- La función de string devolverá el texto dentro de una etiqueta.
- Cuando naveguemos por la etiqueta, verificaremos la condición con el texto.
- Devolver texto
Veremos el texto de búsqueda dentro de una etiqueta por dos métodos.
Método 1: iterativo
Este método utiliza el bucle for para buscar el texto.
Ejemplo
Python3
from bs4 import BeautifulSoup import requests # sample web page sample_web_page = 'https://www.geeksforgeeks.org/caching-page-tables/' # call get method to request that page page = requests.get(sample_web_page) # with the help of beautifulSoup and html parser create soup soup = BeautifulSoup(page.content, "html.parser") child_soup = soup.find_all('strong') text = 'page table base register (PTBR)' # we will search the tag with in which text is same as given text for i in child_soup: if(i.string == text): print(i)
Producción
<strong>registro base de tabla de páginas (PTBR)</strong>
Método 2: Usar lambda
Es una alternativa de una sola línea del ejemplo anterior.
Ejemplo
Python3
from bs4 import BeautifulSoup import requests # sample web page sample_web_page = 'https://www.geeksforgeeks.org/caching-page-tables/' # call get method to request that page page = requests.get(sample_web_page) # with the help of beautifulSoup and html parser create soup soup = BeautifulSoup(page.content, "html.parser") text = 'CS Theory Course' # Search by text with the help of lambda function gfg = soup.find_all(lambda tag: tag.name == "strong" and text in tag.text) print(gfg)
Producción
[<strong>Curso Teórico de CS</strong>]
Publicación traducida automáticamente
Artículo escrito por cse1604310056 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA