2017-03-31 10 views
0
<div data-offset-key="80psj-0-0" class="_1mf _1mj"><span data-offset-key="80psj-0-0"><br data-text="true"></span></div> 

我用这三个选项如何找到这个HTML链接的元素?该CLASS_NAME,XPath和CSS选择器没有什么帮助寻找元素

  1. driver.find_element_by_class_name("_1mf_1mj")
  2. driver.find_element_by_xpath("//*[@id="js_1e"]/div[1]/div[1]/div[2]/div/div/div/div/div[2]/div/div/div/div")
  3. driver.find_element_by_css_selector("#js_1e > div._i-o > div.clearfix._ikh > div._4bl9 > div > div > div > div > div._5rpb > div > div > div > div")
+0

什么'driver.find_element_by_xpath('// DIV [@数据偏移键=” 80psj-0-0" ]“)'? –

+0

您尝试使用单个类_1mf_1mj来查找'find_element_by_class_name',但该元素有两个类'_1mf'和'_1mj'。 – BrenBarn

+0

那么如何写两个类呢? –

回答

0

用CSS选择器:

driver.find_element_by_css_selector('div[data-offset-key=80psj-0-0]') 

或者像Willem Van Onsem在评论中说,使用XPath:

driver.find_element_by_xpath('//div[@data-offset-key="80psj-‌​0-0"]') 
+0

这两个解决方案都给出错误,如下所示: - 1)Css_selector: - raise exception_class(message,screen,stacktrace) selenium.common.exceptions.InvalidSelectorException:消息:无效的选择器:指定了无效或非法的选择器。 2)XPATH: - SyntaxError:第22行文件fb.py中的非ASCII字符'\ xe2',但未声明编码;有关详细信息,请参阅http://python.org/dev/peps/pep-0263/ –

0

试试这个:

driver.find_element_by_css_selector("._1mf._1mj")