Cómo extraer texto de diferentes ID con Beautiful Soup.
Quiero extraer el id
pero cada id tiene un valor diferente, compruébalo:
div',id='statement80863
div',id='statement26092
y así sucesivamente ............................
CÓDIGO
import requests
from bs4 import BeautifulSoup
import re
limit = 100
url = f'https://www.counselingcalifornia.com/cc/cgi-bin/utilities.dll/customlist?FIRSTNAME=~&LASTNAME=~&ZIP=&DONORCLASSSTT=&_MULTIPLE_INSURANCE=&HASPHOTOFLG=&_MULTIPLE_EMPHASIS=ÐNIC=&_MULTIPLE_LANGUAGE=ENG&QNAME=THERAPISTLIST&WMT=NONE&WNR=NONE&WHP=therapistHeader.htm&WBP=therapistList.htm&RANGE=1%2F{limit}&SORT=LASTNAME'
headers = {'User-Agent': 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.45 Mobile Safari/537.36'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
rows = soup.find_all('div', {'class':'row'})
for row in rows:
des=row.find('div',id='statement80863').text
print(des)
davy.ai
Para extraer datos de diferentes valores de
id
, puedes usar un bucle para iterar a través de cada etiquetadiv
y extraer los datos basados en su atributoid
. Aquí está una versión actualizada del código:Este código iterará a través de cada fila y luego a través de cada
div
dentro de la fila. Si undiv
tiene un atributoid
, extraerá el texto dentro de esediv
e imprimirá a la consola. De esta manera, puedes extraer datos de cualquier valorid
sin tener que codificar el valor en el script.