📌  相关文章
📜  如何从本地保存的 html 页面中抓取数据 - Python (1)

📅  最后修改于: 2023-12-03 14:51:48.138000             🧑  作者: Mango

如何从本地保存的 html 页面中抓取数据 - Python

如果您想从本地保存的 HTML 页面中获取数据,Python 有很多选择。在本篇文章中,我们将讨论几种最流行的方法。

使用 Beautiful Soup

我们可以使用 Beautiful Soup 来解析 HTML 文件。Beautiful Soup 是 Python 的一个库,可以从 HTML 和 XML 文件中提取数据。

from bs4 import BeautifulSoup

with open("index.html") as fp:
    soup = BeautifulSoup(fp, "html.parser")
    
print(soup.title)

这将输出 HTML 页面中的标题标签。

使用正则表达式

使用正则表达式来解析 HTML 页面是另一种常见方法。虽然这种方法比使用 Beautiful Soup 更麻烦,但它可以更灵活地处理 HTML 数据。

import re

with open("index.html") as fp:
    html = fp.read()

match = re.search(r'<title>(.*?)</title>', html)
if match:
    print(match.group(1))

这将输出 HTML 页面中的标题标签。

使用 lxml

如果您需要提取更复杂的数据并且您的 HTML 数据结构非常复杂,则可以使用 lxml 库。

from lxml import html

with open("index.html") as fp:
    html_data = fp.read()
    
tree = html.fromstring(html_data)
title = tree.xpath('//title/text()')[0]
print(title)

这将输出 HTML 页面中的标题标签。

无论您选择哪种方法,都可以轻松地从本地保存的 HTML 页面中提取数据。

参考资料: