1、简介
LXML是功能最丰富的 和易于使用的库 用于处理 XML 和 HTML 在 Python 语言中。
2、代码测试
2.1 lxml解析网页
使用xpath获取所有段落的文本
# -*- coding: UTF-8 -*-
from lxml import etree
def fetch_text(html):
html = etree.HTML(html)
result = html.xpath("//p/text()")
return result
if __name__ == '__main__':
html = '''
<html>
<head>
<title>这是一个简单的测试页面</title>
</head>
<body>
<p class="item-0">body 元素的内容会显示在浏览器中。</p>
<p class="item-1">title 元素的内容会显示在浏览器的标题栏中。</p>
</body>
</html>
'''
imgs = fetch_text(html)
print(imgs)
2.2 使用xpath获取所有的文本
# -*- coding: UTF-8 -*-
from lxml import etree
def fetch_text(html):
html = etree.HTML(html)
result = html.xpath("//text()")
return result
if __name__ == '__main__':
html = '''
<html>
<head>
<title>这是一个简单的测试页面</title>
</head>
<body>
<p>body 元素的内容会显示在浏览器中。</p>
<p>title 元素的内容会显示在浏览器的标题栏中。</p>
</body>
</html>
'''
imgs = fetch_text(html)
print(imgs)
2.3 使用xpath获取 class 为 "item-1" 的段落文本
# -*- coding: UTF-8 -*-
from lxml import etree
def fetch_text(html):
html = etree.HTML(html)
result = html.xpath("//p[@class='item-1']/text()")
return result
if __name__ == '__main__':
html = '''
<html>
<head>
<title>这是一个简单的测试页面</title>
</head>
<body>
<p class="item-0">body 元素的内容会显示在浏览器中。</p>
<p class="item-1">title 元素的内容会显示在浏览器的标题栏中。</p>
</body>
</html>
'''
imgs = fetch_text(html)
print(imgs)
结语
如果您觉得该方法或代码有一点点用处,可以给作者点个赞,或打赏杯咖啡;
╮( ̄▽ ̄)╭
如果您感觉方法或代码不咋地
//(ㄒoㄒ)//,就在评论处留言,作者继续改进;
o_O???
如果您需要相关功能的代码定制化开发,可以留言私信作者;
(✿◡‿◡)
感谢各位大佬童鞋们的支持!
( ´ ▽´ )ノ ( ´ ▽´)っ!!!