簡體   English   中英

如何下載產品圖片,selenium 在 python

[英]How to download product images, with selenium in python

我無法下載產品圖片。

下載我從另一個項目中重用的圖像的代碼行,但在這種情況下,它沒有按應有的方式運行,因為代碼沒有找到“src”元素。

我需要下載第一個和第二個產品圖像。

文件名可以是任何東西(image01、image02...)

import pandas as pd
import xlsxwriter
import urllib.request
from time import sleep
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver import ChromeOptions, Chrome
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager 


opts = ChromeOptions()
opts.add_experimental_option("detach", True)
servico=Service(ChromeDriverManager().install())
driver=webdriver.Chrome(service=servico, options=opts)

driver.get("https://pt.aliexpress.com/item/32822452433.html?algo_pvid=3e115ade-85a0-4843-9915-db4524a88b37&algo_exp_id=3e115ade-85a0-4843-9915-db4524a88b37-2&pdp_ext_f=%7B%22sku_id%22%3A%2210000000005806972%22%7D&pdp_npi=2%40dis%21BRL%2152.5%2135.68%21%21%21%21%21%402101e9d216636294181888642ea103%2110000000005806972%21sea&curPageLogUid=s0iQJCGqX5wS")
driver.implicitly_wait(2) # seconds
driver.maximize_window()


 nomeProduto = driver.find_element(By.CLASS_NAME,  "product-title-text").text
 frete = driver.find_element(By.CSS_SELECTOR, "#root > div > div.product-main > div > div.product-info > div.product-dynamic-shipping > div > div > div.dynamic-shipping-line.dynamic-shipping-titleLayout > span > span > strong").text      
 try:
    valor = driver.find_element(By.CSS_SELECTOR, "#root > div > div.product-main > div > div.product-info > div.product-price > div.product-price-current > span").text
 except:
    valor = driver.find_element(By.CSS_SELECTOR, "#root > div > div.product-main > div > div.product-info > div.uniform-banner > div.uniform-banner-box > div:nth-child(1) > span.uniform-banner-box-price").text

    divImagens = driver.find_elements(By. CLASS_NAME, "image-view-magnifier-wrap")[0]
    primeiraImagem = divImagens.find_element(By. TAG_NAME, "img")
    atributoSrc = primeiraImagem.get_attribute("src")
    print(atributoSrc)

    try:
      urllib.request.urlretrieve(atributoSrc,r"C:\Users\felip\OneDrive\Área de Trabalho\Web\VS\Imagens\nome.jpg")

      print("Download OK")
    except:
      print("Error")


 print(nomeProduto)
 print(valor)
 print(frete)

您可以使用此代碼來解決它

代碼

有關更多詳細信息,您可以觀看此

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM