2016-08-20 114 views
0

我想从here获取联系人姓名,我正面临一个非常奇怪的问题。内容在浏览器中可见,但是当我使用硒查找使用xpath的元素时,我没有收到任何数据。只要点击检测元素,硒就会找到数据。元素仅在硒中的检查元素后可用

mydriver = webdriver.Chrome() 
print 'Webdriver Started' 
mydriver.get('http://listings.fta-companies-au.com/l/101662595/BNP-Paribas-in-Sydney-NSW') 
contact_persons = mydriver.find_elements_by_xpath('//div[@class="data-block is-editable no-header"]//div[@class="srp-float-wrap flt-scroll-wrap"]//table[@class="srp-widget-table"]/tbody/tr') 
for p in contact_persons: 
    print p.text 

当我只是加载,并尝试找到数据,它会返回一个空列表,但只要我点击检查元素,我会得到所需要的数据。

我也尝试过使用请求和lxml来解析,但他们也返回空数据。

回答

0

似乎只有当您滚动到它时,才会设置详细信息表。尝试使用文本 - 员工和主管,使用driver.moveto ....功能移动到h2标签。这应该使细节可用。

+0

工作奇迹。如果有人想知道,我用这个代码 title = mydriver.find_element_by_xpath('// h2 [contains(text(),“Employees”)]') hover = ActionChains(mydriver).move_to_element(title) hover。执行() –