2017-05-05 89 views
0

我有HTML O页:如何用selenium python获得伪元素的css值?

<div id="foo" class="bar" title> 
    ::before 
</div> 

随着Chrome或Firefox上选择::before我可以看到样式选项卡上的CSS:

.SomeTitle .bar::before{ 
content: "required_value" 
} 

选择<div id="foo" class="bar" title>后,它在Pseudo ::before element呈现。我确实试图得到价值content

browser = webdriver.Firefox() 
browser.get(my_url) 
my_element = browser.find_element_by_xpath("//*[@id='foo']") 
my_elemet.value_of_css_property("content") 

但它确实没有返回。我怎样才能得到content的价值?

+0

这不重复。我想用python selenium而不是jquery。 –

+0

试试这个:http://stackoverflow.com/questions/28244911/selenium-webdriver-get-text-from-css-property-content-on-a-before-pseudo-ele – Pete

回答

0

看起来像我找到解决方案。这不是纯硒,但它确实有效。

browser.execute_script("return window.getComputedStyle(document.querySelector('.SomeTitle .bar'),':before').getPropertyValue('content')") 

希望这会有助于某人。