bs4无法正确打开本地存储的html页面

时间:2017-03-13 16:37:33

标签: python beautifulsoup

当我尝试解析本地存储的网页副本时,beautifulsoup会向我回复乱码。我不明白为什么在将请求和bs4模块一起用于抓取任务时我从未遇到过这个问题。

这是我的代码

import requests
from bs4 import BeautifulSoup as BS
import os

url_2 = r'/Users/davidferreira/Documents/coding_2/ak_screen_scraping/bmra/'


os.chdir(url_2)
f = open('re_2.html')
soup = BS(url_2, "lxml")
f.close()

print soup

此代码返回以下内容:

<html><body><p>/Users/davidferreira/Documents/coding_2/ak_screen_scraping/bmra/</p></body></html>

我无法在网上找到类似的问题,所以我在这里发布了它。任何帮助将非常感激。

1 个答案:

答案 0 :(得分:0)

您正在将路径(您将其命名为url_2)传递给BeautifulSoup,因此它将其视为网页文本并将其返回,整齐地包含在一些最小的HTML中。看起来很好。

尝试从文件内容构建BS。请参阅此处如何运作:https://www.crummy.com/software/BeautifulSoup/bs4/doc/#making-the-soup

soup = BS(f)

应该......