【问题标题】:Selenium: Fetch href from child class elementSelenium:从子类元素中获取href
【发布时间】:2018-09-24 14:44:44
【问题描述】:

我需要在class="mozaique" 中找到所有href

我的代码:

gfd = driver.find_elements_by_xpath('/html[1]/body[1]/div[1]/div[4]/div[2]/div[1]/div[2]/div[1]/div[1]/div[2]/div[1]')

html:

【问题讨论】:

标签: python selenium web-scraping


【解决方案1】:

下面的xpath应该可以帮助你获取标签下的所有链接:

<div> class='mozaique'</div>

Xpath

//div[@class='mozaique']//a[contains(@href,'')]

您可以使用以下代码 sn-p 打印 href:

links = driver.find_elements_by_xpath('//div[@class='mozaique']//a[contains(@href,'')]')

for link in links:
    print(link.get_attribute("href"))

【讨论】:

  • 您好,感谢您的回复。但它不打印链接:(
  • @SamSagariya,我已经更新了答案。请检查并告诉我是否有帮助
  • @SamSagariyan 你可以试试这个 xpath 吗?://div[@class='mozaique' and child::div[contains(@id,'video_')]]//*[contains(@href,'')]
  • 无法使用 xpath 表达式定位元素!!链接在框架内
  • 那么,在真正尝试查找元素之前,您是否尝试过切换到框架? switch to iframe
【解决方案2】:

首先,获取你的父元素:

parent = driver.find_element_by_class_name("mozaique")

然后获取父元素中所有“a”标签的列表。

a = parent.find_elements_by_tag_name("a")

然后运行一个循环来打印hrefs

for x in a:
    print(x.get_attribute("href"))

【讨论】:

  • print(x.get_attribute("href")) 这会给元素不存在错误。
猜你喜欢
  • 2013-12-28
  • 1970-01-01
  • 2023-03-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-05
  • 1970-01-01
  • 2023-01-28
相关资源
最近更新 更多