【问题标题】:Is there a way to find out what elements are above an element in the DOM hierarchy with requests HTML有没有办法通过请求 HTML 找出 DOM 层次结构中的元素上方的元素
【发布时间】:2019-07-03 22:01:50
【问题描述】:

我正在使用 requests-html 进行网络抓取的 python 项目,我遇到了一个问题,即我试图抓取的网站上的 HTML 部分在 2 个地方的结构相同(一个用于移动一个用于桌面)。当我使用 .find() 方法时,它会同时抓取它们。区分它们的唯一方法是通过它们上方的 div 的 id。有谁知道是否有一种方法可以搜索其他元素之上的元素,就像 .find() 的反面一样。

【问题讨论】:

    标签: html css python-3.x python-requests-html


    【解决方案1】:

    您始终可以使用正确的 id 找到所需的父元素,然后您可以从那里找到所有子元素:

    from requests_html import HTMLSession()
    
    with HTMLSession() as s:
        r = s.get(url)
        target = r.html.find('tag#id_of_choice', first=True)
        elems = target.find('tag') 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-05
      • 2015-03-29
      • 2013-01-21
      • 1970-01-01
      • 2012-08-04
      • 1970-01-01
      • 2023-01-26
      • 1970-01-01
      相关资源
      最近更新 更多