【问题标题】:Get href from anchor XPath(selenium python)从锚 XPath(selenium python) 获取 href
【发布时间】:2018-01-26 12:35:22
【问题描述】:

如何获取 XPath 以获取此页面 https://www.amazon.com/s/ref=lp_11444071011_nr_p_8_1/132-3636705-4291947?rh=n%3A3375251%2Cn%3A%213375301%2Cn%3A10971181011%2Cn%3A11444071011%2Cp_8%3A2229059011 上产品锚点的所有 href。我想获取与以下链接相同的链接的href。如何检索包含 https://www.amazon.com/ 的链接的 href,以便产品与 Xpath 和 selenium 链接。我将不胜感激。

<a class="a-link-normal s-access-detail-page  s-color-twister-title-link a-text-normal" title="Under Armour Men's Tech Short Sleeve T-Shirt" href="https://www.amazon.com/Shortsleeve-T-Shirt-Under-Armour-Midnight/dp/B00783KT9Y/ref=sr_1_4?s=sports-and-fitness-clothing&ie=UTF8&qid=1516968485&sr=1-4&refinements=p_8%3A2229059011"><h2 data-attribute="Under Armour Men's Tech Short Sleeve T-Shirt" data-max-rows="0" class="a-size-base s-inline  s-access-title  a-text-normal">Under Armour Men's Tech Short Sleeve T-Shirt</h2></a>

【问题讨论】:

  • 请参阅:How do I do X? SO 的期望是,提出问题的用户不仅会进行研究以回答他们自己的问题,还会分享该研究、代码尝试和结果。这表明您已经花时间尝试帮助自己,它使我们免于重复明显的答案,最重要的是它可以帮助您获得更具体和相关的答案!另见:How to Ask

标签: python selenium xpath amazon


【解决方案1】:

查找所有href以url开头的标签并获取该href

//a[starts-with(@href, 'https://www.amazon.com/')]/@href

【讨论】:

  • 不错!我不知道开头选项
【解决方案2】:

这应该可行

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

LINKS_XPATH = '//*[contains(@id,"result")]/div/div[3]/div[1]/a'
browser = webdriver.Firefox()
browser.get('https://www.amazon.com/s/ref=lp_11444071011_nr_p_8_1/132-3636705-4291947?rh=n%3A3375251%2Cn%3A%213375301%2Cn%3A10971181011%2Cn%3A11444071011%2Cp_8%3A2229059011')
links = browser.find_elements_by_xpath(LINKS_XPATH)
for link in links:
    href = link.get_attribute('href')
    print href

【讨论】:

  • 不客气!这里没有使用imports、EC、By和WebdriverWait,但是我建议你使用它而不是简单地做“find_element...”,因为它可以防止很多异常
猜你喜欢
  • 2018-04-24
  • 2023-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-09
  • 2021-07-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多