爬虫-BeautifulSoup之XML篇

1. 发送 HTTP 请求获取页面内容

python 复制代码
url = "https://example.com"
response = requests.get(url)
xml_content = response.text

2. 创建 Beautiful Soup 对象

python 复制代码
soup = BeautifulSoup(xml_content, 'xml')

3. 解析 XML 标签

3.1. 标签选择器

python 复制代码
# 选择所有的 <element> 标签
elements = soup.find_all('element')

# 选择第一个 <element> 标签
first_element = soup.find('element')

3.2. 属性选择器

python 复制代码
# 选择属性 id 为 '1' 的所有 <element> 标签
elements_with_id = soup.find_all('element', id='1')

4. 提取标签内容

python 复制代码
# 获取标签文本内容
first_element_content = first_element.text

5. 遍历标签集合

python 复制代码
for element in elements:
    print(element.text)

6. 使用 CSS 选择器

python 复制代码
# 通过 CSS 选择器选择所有 <element> 标签
elements_css = soup.select('element')

7. 处理嵌套标签

python 复制代码
# 获取嵌套标签的内容
nested_content = soup.select_one('root element').text

8. 提取嵌套标签的内容

python 复制代码
# 嵌套选择标签
nested_element_content = soup.find('root').find('element').text

9. 使用 find_all 方法

python 复制代码
# 使用 `find_all` 方法选择属性 id 为 "1" 的所有 <element> 标签
elements_with_id = soup.find_all("element", attrs={"id": "1"})
相关推荐
楼田莉子2 分钟前
C++17新特性:optional/variant/any/string_view
c++·后端·学习
hef28816 分钟前
SQL和Python怎么选?数据分析工具实战指南
python·sql·数据分析
徐安安ye17 分钟前
FlashAttention长程依赖建模:局部+全局的Hybrid Spiral结构设计
python·深度学习·机器学习
IT策士37 分钟前
Django 从 0 到 1 打造完整电商平台:商品排序与浏览量统计
后端·python·django
godspeed_lucip40 分钟前
LLM和Agent——专题3: Agentic Workflow 入门(4)
人工智能·python
godspeed_lucip43 分钟前
LLM和Agent——专题3: Agentic Workflow 入门(2)
网络·人工智能·python
mingshili44 分钟前
[Python] Python中自带模块级的单例模式-不需要定义单例类
python·单例模式
水木流年追梦1 小时前
大模型入门-DPO 直接偏好优化
人工智能·学习·算法·机器学习·正则表达式
网络与设备以及操作系统学习使用者1 小时前
vi与vim在openEuler中的差异及应用
linux·运维·网络·学习·vim
alphaTao1 小时前
LeetCode 每日一题 2026/5/18-2026/5/24
python·leetcode