首页 > 解决方案 > 硒找不到所有元素

问题描述

Selenium 无法找到网页中的所有标签。它只找到一个,但有两个,我需要这两个来使我的脚本工作。这是链接。我尝试使用 WebDriverWait,但它仍然只返回了一个标签。我尝试搜索不同的 div,但我一直只返回一个。我认为这与第二个 div 具有的某些类有关,而第一个没有,但我真的被困住了。

这是HTML代码。

full_image_link = driver.find_element_by_class_name('sc-1qpw8k9-3')
full_image_link.click()

full_image_link_ = WebDriverWait(driver, 10).until(
    EC.presence_of_all_elements_located(
        (By.CLASS_NAME, 'sc-1qpw8k9-3')
    )
)

标签: pythonseleniumweb-scraping

解决方案


您可以使用 api 检索图像链接,无需抓取:

import requests

r = requests.get('https://www.pixiv.net/ajax/illust/93333481/pages?lang=en').json()
image_links = [i['urls']['original'] for i in r['body']]

结果:

['https://i.pximg.net/img-original/img/2021/10/10/23/35/09/93333481_p0.jpg',
 'https://i.pximg.net/img-original/img/2021/10/10/23/35/09/93333481_p1.jpg']

推荐阅读