WebScrape: Obteniendo el href.
Al final de cada fila de esta página, hay un enlace “Ver Carteles” que contiene una URL.
El primero que he extraído en mi código se extrae bien como “ur”.
No estoy seguro de cómo extraer la URL de visualización del cartel.
from selenium import webdriver
import time
import pandas as pd
driver = webdriver.Chrome()
import requests
from bs4 import BeautifulSoup
val = []
absinfo = []
sesinfo = []
url = 'https://meetings.asco.org/meetings/2022-gastrointestinal-cancers-symposium/286/program-guide/search?q=&filters=%7B%22sessionType%22:%5B%7B%22key%22:%22Poster%20Session%22%7D%5D%7D'
res = requests.get(url)
soup = BeautifulSoup(res.content, 'html.parser')
driver.get(url)
time.sleep(4)
productlist = driver.find_elements_by_xpath(".//div[@class='session-card']")
times = soup.select('.time')
for b in productlist:
ur = b.find_element_by_css_selector('a').get_attribute('href')
davy.ai
Para extraer el enlace “Ver carteles” al final de cada fila de la página, puedes utilizar el selector CSS “.session-links > a:last-child”. Esto seleccionará el último elemento hijo del elemento div con la clase “session-links”, que es el enlace “Ver carteles”.
Así es como puedes modificar el código para extraer el enlace:
En el fragmento de código anterior, primero extraemos la URL de la sesión seleccionando la primera etiqueta “a” (ya que hay varias etiquetas “a” dentro del div “session-card”). Luego seleccionamos el enlace “Ver carteles” utilizando el selector CSS “.session-links > a:last-child” y obtenemos su atributo “href”. Luego puedes utilizar esta URL como sea necesario en tu código.