我需要从动态变化的html中获取一些信息。该网站是: https://www.mitartlending.com/featuredartworks。在这里,当你点击一个给定的图像并将鼠标悬停在放大的图像上时,会弹出一个文本覆盖图。我正在努力把那篇课文删掉。在尝试使用BS后,我决定可能必须使用硒。你将如何着手解决这个问题?到目前为止,我已经:
from selenium import webdriver
driver = webdriver.Chrome('/Users/Abramo/SeleniumDrivers/chromedriver')
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
driver.get('https://www.mitartlending.com/featuredartworks')
driver.implicitly_wait(3)
my_element = driver.find_element_by_xpath(f'/html/body/div[5]/div[2]/div/main/section/div/div/div/div[3]/div/div/div/div[1]/div/a/img')
my_element.click()
copy_from = driver.find_element_by_class_name('sqs-lightbox-meta overlay-description-visible')
my_next_button = driver.find_element_by_class_name('sqs-lightbox-next')
您可以通过以下方式找到这些图像中的任何一个:
例如,点击第二张你可以使用的图片
要将鼠标悬停在图元上,可以执行以下操作:
现在,当文本出现时,您可以定位并获取它
其他任何图像也可以这样做。
总的来说,代码如下所示:
我添加sleeps只是为了简单起见,而它更倾向于使用预期条件等待
数据都在属性中。您只需要提取适当的。不需要硒的开销
相关问题 更多 >
编程相关推荐