【问题标题】:how to get all elements (visible and invisible)如何获取所有元素(可见和不可见)
【发布时间】:2017-05-19 16:00:44
【问题描述】:

我停留在列表视图中,其中有数千个项目,但当我向下滚动时只显示 20 个项目,然后再显示 20 个项目,依此类推...

<ul class'python'>
    <li> item1 </li>
    <li> item2 </li>
    <li> item3 </li>
     .
     .
     .
    <li> item1000 </li>
</ul>

我的代码也只是显示项目,我想通过 selenium 获取所有可见和不可见项目?我怎么能得到那个?

ul=driver.find_element_by_class('python')
for item in ul.find_elements_by_tag_name("li"): 
    print(item.text)

【问题讨论】:

  • 能否提供html页面?项目是全部加载在页面上还是每次滚动时加载 20 x 20?

标签: python selenium web-scraping automation scraper


【解决方案1】:

如果您的问题只是向下滚动网页,您可以这样做:

driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")

对于更精确的方法,如果你有下一个你想要到达的元素的 xpath,你可以:

element=find_element_by_xpath("xpath of the li you are trying to access")
element.location_once_scrolled_into_view

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-20
    • 2011-04-02
    • 1970-01-01
    • 1970-01-01
    • 2017-08-20
    • 2016-07-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多