如何使用Python和BeautifulSoup读取并解析本地HTML文件?
- 内容介绍
- 文章标签
- 相关推荐
本文共计818个文字,预计阅读时间需要4分钟。
直接传递文件路径给`BeautifulSoup`是不行的,它不识别路径字符串。必须先用Python打开文件,读取内容,然后再传递给解析器。
-
open()要加encoding="utf-8",否则中文乱码很常见,尤其 Windows 下默认是gbk - 推荐用
with open(...),避免文件句柄泄露 - 解析器选
"html.parser"就够用,不用额外装lxml或html5lib,除非你明确需要它们的容错能力
with open("page.html", encoding="utf-8") as f: soup = BeautifulSoup(f, "html.parser")
find() 和 select() 该选哪个?
看你是习惯写 CSS 选择器,还是更倾向方法链式调用。两者结果一致,但行为细节不同。
本文共计818个文字,预计阅读时间需要4分钟。
直接传递文件路径给`BeautifulSoup`是不行的,它不识别路径字符串。必须先用Python打开文件,读取内容,然后再传递给解析器。
-
open()要加encoding="utf-8",否则中文乱码很常见,尤其 Windows 下默认是gbk - 推荐用
with open(...),避免文件句柄泄露 - 解析器选
"html.parser"就够用,不用额外装lxml或html5lib,除非你明确需要它们的容错能力
with open("page.html", encoding="utf-8") as f: soup = BeautifulSoup(f, "html.parser")
find() 和 select() 该选哪个?
看你是习惯写 CSS 选择器,还是更倾向方法链式调用。两者结果一致,但行为细节不同。

