AttributeError:模块“bs4”没有属性“BeautifulSoup”

Mha*_*med 3 python-3.x

Traceback (most recent call last):
  File "bs4.py", line 1, in <module>
    import  bs4
  File "/home/mhadi/Desktop/bs4test/bs4.py", line 5, in <module>
    soup = bs4.BeautifulSoup(site,'lxml')
AttributeError: module 'bs4' has no attribute 'BeautifulSoup'
Run Code Online (Sandbox Code Playgroud)

代码:

import  bs4
import urllib.request

site = urllib.request.urlopen('http://127.0.0.1:8000').read()
soup = bs4.BeautifulSoup(site,'lxml')
#for i in site: 
#    print(site[i])
print(soup)
Run Code Online (Sandbox Code Playgroud)

Wil*_*sem 6

问题是你的文件名是bs4.py. 现在,如果您编写一条import语句,Python 将首先查找具有该名称的本地文件。所以它假设您import bs4引用的是您自己的文件。因此,您的文件将旨在导入自身,但它显然不包含所需的模块。

快速修复方法是重命名该文件。例如进入bs4tests.py. 然后你就可以使用import bs4.

或者,您可以尝试删除本地路径,例如:

import sys               # import sys package
old_path = sys.path[:]   # make a copy of the old paths
sys.path.pop(0)          # remove the first one (usually the local)
import bs4               # import the package
sys.path = old_path      # restore the import path
Run Code Online (Sandbox Code Playgroud)