爬虫-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"})
相关推荐
全栈老石5 分钟前
Python 异步生存手册:给被 JS async/await 宠坏的全栈工程师
后端·python
梨落秋霜13 分钟前
Python入门篇【模块/包】
python
阔皮大师1 小时前
INote轻量文本编辑器
java·javascript·python·c#
小法师爱分享1 小时前
StickyNotes,简单便签超实用
java·python
深蓝电商API1 小时前
处理字体反爬:woff字体文件解析实战
爬虫·python
开源技术1 小时前
Claude Opus 4.6 发布,100万上下文窗口,越贵越好用
人工智能·python
AI视觉网奇1 小时前
ue 角色驱动衣服 绑定衣服
笔记·学习·ue5
张3蜂2 小时前
深入理解 Python 的 frozenset:为什么要有“不可变集合”?
前端·python·spring
皮卡丘不断更2 小时前
手搓本地 RAG:我用 Python 和 Spring Boot 给 AI 装上了“实时代码监控”
人工智能·spring boot·python·ai编程
爱打代码的小林2 小时前
基于 MediaPipe 实现实时面部关键点检测
python·opencv·计算机视觉