Python selenium,访问div类,iframe样式

时间:2017-03-11 00:02:25

标签: python selenium selenium-webdriver

我需要获得src="http://example1.com"链接

<div class="video">
  <iframe style="border: none;" src="http://example1.com" width="100%" height="460" scrolling="no" frameborder="0" marginwidth="0" marginheight="0" allowfullscreen></iframe>
</div>
<div style="background-color: #428bca; color: #fff; margin-top: 20px; text-align: left; font-size: 14px;padding: 8px;">Description
  <a style="color:yellow; font-weight: bold" href="http://example.com">Text</a>
</div>

我试过

elems = driver.find_elements_by_xpath("//div[@class='video']")
for elem in elems:
    print elem.get_attribute("src")

或:

element = driver.find_element_by_class_name('video').get_attribute('src')
print element

还有很多其他人似乎什么都没有用,或者我发现“没有” 有什么想法吗?

2 个答案:

答案 0 :(得分:1)

src="http://example1.com"不在<div> class='video',而在其子<iframe>元素中

iframe = driver.find_element_by_css_selector('.video > iframe')
print iframe.get_attribute('src')

答案 1 :(得分:0)

您想要获得的是iframe标记,因此您需要添加xpath并尝试

element = driver.find_elements_by_xpath("//div[@class='video']/iframe").get_attribute('src')
print element