如何获得动态搜索结果:Python的/硒

如何获得动态搜索结果:Python的/硒

问题描述:

我是新来的Python,硒,需要如何做一些这方面的帮助:如何获得动态搜索结果:Python的/硒

我寻找的网站上某些事情和搜索之后,结果是渲染是基于搜索动态的。我正在尝试获取结果集,但无法处理如何操作: 下面是代码所包含的结果页的一部分,我试图获取所有列表。我特别希望通过每个上市迭代,也希望得到各上市代码(1111111111,1111111112 ....)

<div id="listingsParent"> 
     <div id="listings" class="visibleLayer"> 
     <div> 
      <div id="listing_1111111111"> 
      <div class="abc test">.......</div> 
      ---- 
      ---- 
     </div> 
      <div id="listing_1111111112"> 
      <div class="abc test1">.......</div> 
      ---- 
      ---- 
     </div> 
      <div id="listing_1111111113"> 
      <div class="abc test2">.......</div> 
      ---- 
      ---- 
     </div> 
      <div id="listing_1111111114"> 
      <div class="abc test3">.......</div> 
      ---- 
      ---- 
     </div>  

我用的代码:

allListings = browser.find_elements_by_xpath(“//* [@ ID = '清单'] “)
LisBegin = allListings.find_elements_by_xpath(” // DIV [包含(文本(), 'listing_'] “)

,然后试图获得属性” ID “..... listing_1111111111 这不适合我。

感谢你的帮助

拉吉

您可以通过XPath的achief,这一切具有包含listing_将匹配这个XPath

LisBegin = allListings.find_elements_by_xpath("//div[contains(@id, 'listing_')]") 

你可以看一下this一个ID的元素有关xpath的更多信息。

也看看locators in selenium有关不同定位器

我希望这将帮助你在你的工作,如果你有任何问题,请不要犹豫,问他们更多的信息。

观察1:它必须是findelement而不是findelement。

allListings = browser.find_element_by_xpath("//*[@id='listings']") 

观察2:使用ID而不是文本。

LisBegin = allListings.find_elements_by_xpath("//div[contains(@id, 'listing_')]") 

希望这可以帮助你。谢谢。

+0

谢谢你...一旦我得到“LisBegin”,我应该用什么来获取值'1111111111' – user3713721

+0

现在LisBegin包含所有列表_ ******节点..为了获取显示的文本在java中我们使用getText。 String value = LisBegin.get(0).getText(); –