首页 > 解决方案 > 如何使用 BS4 和 LXML 获取 xpath

问题描述

我尝试txt从网站获取,我BS4用来解析网站

<ul class="sub-data-list">
<li>Monday : 11:00 - 18:00</li>
</ul>

这是来自网站的来源(来自检查元素)

这是我尝试获取数据的代码

from bs4 import BeautifulSoup
from lxml import etree
from lxml import html
import requests

URL = "https://example.com"


webpage = requests.get(URL)
soup = BeautifulSoup(webpage.content, "html.parser")
dom = etree.HTML(str(soup))



print("საათი: :", dom.xpath('//*[@class="data-list"]')[0].text)

我也尝试[0].text , [1].text等,还有其他方法吗?

标签: pythonpython-3.xparsingbeautifulsouplxml

解决方案


如果您正在尝试获取<li>元素的内容,请尝试以下操作:

from bs4 import BeautifulSoup

html = """<ul class="sub-data-list">
<li>Monday : 11:00 - 18:00</li>
</ul>"""

soup = BeautifulSoup(html, "html.parser")
ul = soup.find('ul', class_='sub-data-list')
print(ul.li.text)

推荐阅读