获取锚点XPath中的href(Selenium Python)

2024-04-19 23:07:48 发布

您现在位置:Python中文网/ 问答频道 /正文

如何让XPath获取此页上产品锚定的所有hrefhttps://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。如何检索包含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&amp;ie=UTF8&amp;qid=1516968485&amp;sr=1-4&amp;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>


Tags: comamazontitle链接wwwtechampshort
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

找到其href以url开头的所有标记并获取该href

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

相关问题 更多 >