您的位置:

Python XML解析详解

一、Python解析JSON

JSON是一种轻量级的数据交换格式,通过Python的json库可以方便地进行解析。以下为示例代码:

import json
json_str = '{"name": "Tom", "age": 18, "gender": "male"}'
json_dict = json.loads(json_str)
print(json_dict['name'])

以上代码将JSON字符串解析为Python字典,并且可以方便地访问其中的数据。

二、Python解析XML

XML是一种描述数据的标记语言,通过Python的xml库可以方便地进行解析。以下为示例代码:

import xml.etree.ElementTree as ET
xml_str = '<students><student id="001"><name>Tom</name><age>18</age></student></students>'
root = ET.fromstring(xml_str)
for child in root:
    print(child.attrib, child.find('name').text, child.find('age').text)

以上代码将XML字符串解析为树形结构,并且可以通过访问元素和属性来访问其中的数据。

三、Python解析URL参数

URL参数是通过URL传递数据的方式,通过Python的urllib库中的parse模块可以方便地进行解析。以下为示例代码:

import urllib.parse
url = 'https://www.example.com/?name=Tom&age=18'
params = urllib.parse.parse_qs(urllib.parse.urlsplit(url).query)
print(params['name'][0], params['age'][0])

以上代码将URL参数解析为字典,并且可以方便地访问其中的数据。

四、Python解析HTML

HTML是一种用于构建网页的标记语言,通过Python的BeautifulSoup库可以方便地进行解析。以下为示例代码:

from bs4 import BeautifulSoup
html_str = '<html><body><h1>Hello, World!</h1></body></html>'
soup = BeautifulSoup(html_str, 'html.parser')
print(soup.find('h1').text)

以上代码将HTML字符串解析为树形结构,并且可以通过访问标签和属性来访问其中的数据。

五、Python解析JSON文件

通过Python的json库可以方便地解析JSON文件。以下为示例代码:

import json
with open('data.json', 'r') as f:
    json_dict = json.load(f)
print(json_dict['name'])

以上代码将JSON文件解析为Python字典,并且可以方便地访问其中的数据。

六、Python解析INI文件

INI是一种简单的配置文件格式,通过Python的ConfigParser库可以方便地进行解析。以下为示例代码:

import configparser
config = configparser.ConfigParser()
config.read('config.ini')
print(config.get('Section1', 'key1'))

以上代码将INI文件解析为配置信息,可以方便地访问其中的数据。

七、Python解析HTML文件

通过Python的BeautifulSoup库可以方便地解析HTML文件。以下为示例代码:

from bs4 import BeautifulSoup
with open('index.html', 'r') as f:
    html_str = f.read()
soup = BeautifulSoup(html_str, 'html.parser')
print(soup.find('h1').text)

以上代码将HTML文件解析为树形结构,并且可以通过访问标签和属性来访问其中的数据。

八、Python Word解析

Word是一种常用的文档格式,通过Python的python-docx库可以方便地进行解析。以下为示例代码:

import docx
doc = docx.Document('document.docx')
for para in doc.paragraphs:
    print(para.text)

以上代码将Word文档解析为段落信息,并且可以方便地访问其中的数据。