0

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

4

1 回答 1

0

您始终可以使用正确的 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') 
于 2019-08-25T01:30:27.967 回答