簡體   English   中英

在亞馬遜網頁上使用 python 和 selenium 報廢 asin

[英]Scrap asin on amazon webpage with python and selenium

有人知道如何在這部分源代碼上廢棄 asin 嗎?

在此處輸入圖像描述

我試過了:

asin_n = WebDriverWait(driver,5).until(EC.presence_of_element_located((By.XPATH, "(//td[@class='.prodDetAttrValue'])"))).text 

asin_n = WebDriverWait(driver, 5).until(EC.visibility_of_element_located((By.CSS_SELECTOR, "(//td[@class='.prodDetAttrValue'])"))).text

asin_n = WebDriverWait(driver,20).until(EC.visibility_of_element_located((By.XPATH, "//td[@class='a-size-base prodDetAttrValue']"))).text                

asin_n = driver.find_element_by_css_selector('td.a-size-base.prodDetAttrValue').text

但是不行,請問有人知道如何在這部分制作廢品嗎? 謝謝回復,再見!

prodDetAttrValue是類名之一,但也有其他類名。 因此,您需要改用contains()並且可以使用以下任一Locator Strategies

  • 使用XPATHprodDetAttrValue class

     asin_n = WebDriverWait(driver,20).until(EC.visibility_of_element_located((By.XPATH, "//td[contains(@class, 'prodDetAttrValue')]"))).text
  • 使用XPATH和完整的 class

     asin_n = WebDriverWait(driver,20).until(EC.visibility_of_element_located((By.XPATH, "//td[@class='a-size-base prodDetAttrValue']"))).text
  • 使用CSS_SELECTORprodDetAttrValue class

     asin_n = WebDriverWait(driver,20).until(EC.visibility_of_element_located((By.XPATH, "td.prodDetAttrValue"))).text
  • 使用CSS_SELECTOR並完成class

     asin_n = WebDriverWait(driver,20).until(EC.visibility_of_element_located((By.XPATH, "td.a-size-base.prodDetAttrValue"))).text

感謝@DebanjanB 的回答。

我的代碼有一些錯誤:

With Using XPATH and prodDetAttrValue class: bad word out, not asin (out: Desa)
With Using XPATH and complete class: same error
With Using CSS_SELECTOR and prodDetAttrValue class: same error (i have edit your code, with CSS_SELECTOR)
With Using CSS_SELECTOR and complete class:
    raise TimeoutException(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message:
Stacktrace:

你知道錯在哪里嗎?

暫無
暫無

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

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