社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

selenium python只获得第一个图像链接

ByHala • 3 年前 • 1429 次点击  

product 一共有五张图片。我试图获得这五个图像链接,但只获得第一个图像链接。这是我的代码:

images = driver.find_elements_by_css_selector('#shopify-section-product-template .Image--lazyLoaded')

for image in images:
    image = image.get_attribute('data-original-src') 

#原始数据src包含每个图像的链接

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/130753
 
1429 次点击  
文章 [ 3 ]  |  最新文章 3 年前
Barno Chakraborty
Reply   •   1 楼
Barno Chakraborty    4 年前

因为他们的课程不同,所以你们的学生都能拿到。 您将获得第一张图片:

images = driver.find_elements_by_css_selector('#shopify-section-product-template .Image--lazyLoaded')

但要获得其他四个用途:。图像——法登类

user15558540
Reply   •   2 楼
user15558540    4 年前

这里最可能发生的情况是,图像没有被渲染。要解决这个问题,只需添加一个代码片段,在调用“find_element”函数之前滚动到页面底部。

driver.execute_script("window.scrollTo(0, 990000)") 
Prophet
Reply   •   3 楼
Prophet    4 年前

该页面最初仅加载1个图像。
要获得更多图像,必须滚动页面。
因此,无需滚动页面,即可使用

images = driver.find_elements_by_css_selector('#shopify-section-product-template .Image--lazyLoaded')

中只有一个元素 images 列表
UPD
您可以单击左侧的dot导航,然后获得图像:

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

wait = WebDriverWait(driver, 20)

wait.until(EC.visibility_of_element_located((By.CSS_SELECTOR, ".Product__SlideshowNavScroller")))
time.sleep(0.2)
dots = driver.find_elements_by_css_selector('.Product__SlideshowNavScroller a')
image_src = set()
for dot in dots:
    dot.click()
    time.sleep(1)
    images = driver.find_elements_by_css_selector('#shopify-section-product-template .Image--lazyLoaded')
    for image in images:
        image_src.add(image.get_attribute('data-original-src'))

image_src 最终将包含所有图片src链接