使用 python 在 HTML 中找到 CSS 路径(祖先标签)
find the CSS path (ancestor tags) in HTML using python
我想获取匹配文本的所有祖先 div 标签。例如,如果 html 看起来像 HTML snippet
我正在搜索 "Earl E. Byrd"。我想要一个包含 {"buyer-info","buyer-name"}
的列表
这就是我所做的
r=requests.get(self.url,verify='/path/to/certfile')
soup = BeautifulSoup(r.text,"lxml")
divTags = soup.find_all('div')
我应该如何进行?
使用 xpath 表达式的解决方案:
//div[@title="buyer-info"]/div[text() = "Carlson Busses"]/ancestor::div
如果要通过文本搜索div并获取所有具有title属性的div,首先找到div使用文本,然后使用find_all_previous
设置title=True
soup = BeautifulSoup(r.text,"lxml")
div = soup.find('div', text="Earl E. Byrd")
print([div["title"]] + [d["title"] for d in div.find_all_previous("div", title=True)])
我想获取匹配文本的所有祖先 div 标签。例如,如果 html 看起来像 HTML snippet
我正在搜索 "Earl E. Byrd"。我想要一个包含 {"buyer-info","buyer-name"}
的列表这就是我所做的
r=requests.get(self.url,verify='/path/to/certfile')
soup = BeautifulSoup(r.text,"lxml")
divTags = soup.find_all('div')
我应该如何进行?
使用 xpath 表达式的解决方案:
//div[@title="buyer-info"]/div[text() = "Carlson Busses"]/ancestor::div
如果要通过文本搜索div并获取所有具有title属性的div,首先找到div使用文本,然后使用find_all_previous
设置title=True
soup = BeautifulSoup(r.text,"lxml")
div = soup.find('div', text="Earl E. Byrd")
print([div["title"]] + [d["title"] for d in div.find_all_previous("div", title=True)])