【问题标题】:Not complete list of children in selenium pythonselenium python 中的子级不完整列表
【发布时间】:2018-04-06 18:32:59
【问题描述】:

我正在尝试获取一个元素的所有子元素。 html的结构如下。

html structure img

我写了这样的代码。

time.sleep(30)
stocks = browser.find_element_by_class_name("CI-GRID-BODY-TABLE-TBODY")
stock_list = stocks.find_elements_by_tag_name("tr")

for stock in stock_list:
    print(stock.text)

虽然它总共有 200 个孩子,但它只打印了 14 个孩子。 我认为 30 秒足以运行 javascript 来填满整个表格。

当我打印出 stock_list 的长度时,它显示 200,但屏幕上只显示 14 个项目。

你对这个案子有什么想法吗?

谢谢。

【问题讨论】:

    标签: python selenium


    【解决方案1】:

    如果要打印所有子元素,可以使用 cssSelector:

    stocks.find_elements_by_css_selector("*")
    

    【讨论】:

    • 我认为这将返回所有 后代,但不会返回 children
    • 我也试过这个,但只打印了 14 件。我想这是因为我想要检索的表格组件在不滚动时最初有 14 个项目。如何检索包括向下滚动项目在内的总项目。
    • @KyuhanNam ,可以尝试修改实现this solution
    • @Andersson 你是对的,该代码不仅会返回孩子,还会返回所有后代。感谢您指出这一点
    猜你喜欢
    • 2018-03-08
    • 2021-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-28
    • 1970-01-01
    相关资源
    最近更新 更多