ImportError:Windows中没有名为bs4的模块

时间:2015-10-25 16:09:57

标签: python image captcha

我正在尝试创建一个脚本来从我的网站下载验证码。 我认为代码工作除了那个错误,当我在cmd中运行它时(我使用的是Windows而不是Linux)我收到以下内容:

from bs4 import BeautifulSoup
ImportError: No module named bs4

我尝试使用pip install BeautifulSoup4 但是我在安装时收到语法错误。

这是脚本:

from bs4 import BeautifulSoup
import urllib2
import urllib

url = "https://example.com"
content = urllib2.urlopen(url)
soup = BeautifulSoup(content)
img = soup.find('img',id ='imgCaptcha')
print img
urllib.urlretrieve(urlparse.urljoin(url, img['src']), 'captcha.bmp')

根据这个answer的问题必须归因于我没有激活virtualenv,然后安装BeautifulSoup4。

此外,我不认为这些信息会有任何帮助,但我将我的python文本保存在notepad.py中并使用cmd运行它。

4 个答案:

答案 0 :(得分:5)

直到刚才我遇到了同样的问题。感谢您的帖子和评论!根据@Martin Vseticka的建议,我检查了我的python文件夹中是否有pip.exe文件。我同时运行python 2.7和3.7。我没有在python 2.7文件夹中但在3.7中。 所以在命令行中我将目录更改为pip.exe文件所在的位置。然后我跑了#34; pip install BeautifulSoup4"它起作用了。见封闭的屏幕截图。 enter image description here

答案 1 :(得分:1)

我在Windows 8.1(64b)计算机上全新安装了Python 3.5,然后运行:

C:\Users\Me\AppData\Local\Programs\Python\Python35-32\Scripts>pip install b
eautifulsoup4
Collecting beautifulsoup4
  Downloading beautifulsoup4-4.4.1-py3-none-any.whl (81kB)
    100% |################################| 81kB 890kB/s
Installing collected packages: beautifulsoup4
Successfully installed beautifulsoup4-4.4.1

然后运行:

C:\Users\Me\AppData\Local\Programs\Python\Python35-32>python test.py

test.py仅包含:

from bs4 import BeautifulSoup

我没有收到任何错误。

答案 2 :(得分:0)

我在Windows 10上安装了python3.7 32bit和python3.7 64 bit。 对于此应用程序,我正在使用32位版本。 我收到以下错误:

ImportError: No module named bs4

当我尝试从我的app.py中“导入bs4”时。有人说:“请确保您的pip和python都是32位”,但是省略了明确说明的方式,所以这里是:

  1. 删除您的虚拟环境(如果存在)。

  2. 使用python -m venv venv创建一个新的venv,但是像这样从您的32位python目录中显式调用它: C:\ Users \ me \ AppData \ Local \ Programs \ Python \ Python37-32 \ python -m venv my_venv

  3. 通过像这样显式调用32位版本来安装要求:

C:\Users\me\AppData\Local\Programs\Python\Python37-32\Scripts\pip install -r requirements.txt

就是这样。我希望它能起作用。

答案 3 :(得分:0)

我可以安装bs4,但仍然收到类似您的错误消息。我的操作系统是64位,只有在安装了“ 32位”版本的最新Python之后才遇到此问题。因此,我删除了32位元代码,然后可以再次导入bs4,并且在安装最新的Python版本64后它仍然可以工作。希望对您有所帮助。