使用 python 和 selenium 在亚马逊网页上废弃 asin

Scrap asin on amazon webpage with python and selenium

有人知道如何在这部分源代码上制作废弃的 asin 吗? 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 是 class 名称之一,但还有其他 class 名称。所以你需要使用 contains() 来代替,你可以使用以下任一种 :

  • 使用 XPATHprodDetAttrValue class:

    asin_n = WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//th[contains(., 'ASIN')]//following::td[contains(@class, 'prodDetAttrValue')]"))).text
    
  • 使用 XPATH 并完成 class:

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