【问题标题】:bs4 won't open locally stored html page correctlybs4 无法正确打开本地存储的 html 页面
【发布时间】:2017-03-13 16:37:32
【问题描述】:

当我尝试解析本地存储的网页副本时,beautifulsoup 向我返回乱码。我不明白为什么我在将 requests 和 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>

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

【问题讨论】:

    标签: python beautifulsoup


    【解决方案1】:

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

    尝试从文件的内容构建 BS。在这里查看它是如何工作的:https://www.crummy.com/software/BeautifulSoup/bs4/doc/#making-the-soup

    soup = BS(f)
    

    应该...

    【讨论】:

      猜你喜欢
      • 2018-01-03
      • 1970-01-01
      • 2013-03-17
      • 1970-01-01
      • 2011-09-12
      • 1970-01-01
      • 2023-04-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多