【问题标题】:ImportError : no module named requestsImportError:没有名为 requests 的模块
【发布时间】:2016-07-19 07:28:53
【问题描述】:

我正在尝试使用 BeautifulSoup 从天气网站检索数据。网站示例:

<channel>
<title>2 Hour Forecast</title>
<source>Meteorological Services Singapore</source>
<description>2 Hour Forecast</description>
<item>
<title>Nowcast Table</title>
<category>Singapore Weather Conditions</category>
<forecastIssue date="18-07-2016" time="03:30 PM"/>
<validTime>3.30 pm to 5.30 pm</validTime>
<weatherForecast>
<area forecast="TL" lat="1.37500000" lon="103.83900000" name="Ang Mo Kio"/>
<area forecast="SH" lat="1.32100000" lon="103.92400000" name="Bedok"/>
<area forecast="TL" lat="1.35077200" lon="103.83900000" name="Bishan"/>
<area forecast="CL" lat="1.30400000" lon="103.70100000" name="Boon Lay"/>
<area forecast="CL" lat="1.35300000" lon="103.75400000" name="Bukit Batok"/>
<area forecast="CL" lat="1.27700000" lon="103.81900000" name="Bukit Merah"/>` 
</weatherForecast>
<channel>

我想检索介于 validTime

之间的下午 3.30 到下午 5.30

从页面检查元素后,我发现下午 3.30 到下午 5.30 在 span 元素内的“class= Text”中:

sample of how the weather data looks like

这是我使用 Python 编写的代码:

import requests
from bs4 import BeautifulSoup
import urllib3

r = requests.get('http://www.nea.gov.sg/api/WebAPI/?    
dataset=2hr_nowcast&keyref=781CF461BB6606AD907750DFD1D07667C6E7C5141804F45D')
soup = BeautifulSoup(r.content, "xml")
soup.find('validTime').string

但是,当我运行代码时,我收到一条错误消息“ImportError : No module name requests”

我已经下载了请求并将它们放在in the Lib within Python27 folder on my C drive

我还使用“pip list”检查我是否安装了请求,这就是我得到的:

beautifulsoup4 <4.4.1>
httplib2 <0.9.2>
lxml <3.6.0>
pip <8.1.2>
requests <2.10.0>
...

如您所见,请求已下载到我的 C 盘 (C:\Python27\Scripts)

为什么我在命令提示符下出现错误?

【问题讨论】:

  • 您确定在运行 Python 可执行文件时使用了正确的可执行文件吗?您可能已经为一个版本安装了requests,然后尝试用另一个版本执行代码。
  • 如何检查我是否使用了正确的?
  • 我的python是2.7.12版本!

标签: python python-requests importerror


【解决方案1】:

我解决这个问题如下我的错误为

>>import requests
"Traceback (most recent call last):
  File "<pyshell#175>", line 1, in <module>
    import requests
ImportError: No module named 'requests' "

下载请求存储库 https://github.com/kennethreitz/requests

将请求目录复制到 python 路径 [例如。 C:\Users\UserName\AppData\Local\Programs\Python\Python35-32]

【讨论】:

    【解决方案2】:

    首先,让我谈谈我的一些困惑。

    在您的屏幕截图中:in the Lib within Python27 folder on my C drive

    首先,文件夹“ensurepip”表示它会帮助你安装pip,但是你没有“site-packages”目录,这意味着python版本中没有安装pip。

    其次,“python2”文件夹已经存在。为什么会在那里?

    第三,如果你已经用pip命令“pip install requests”安装了“requests”,为什么还要复制“requests”以及你的“requests”是从哪里来的?

    解决办法很简单。

    1.卸载你的python。

    2.在“C:\Python27”中安装python 2.7.12 msi,这将帮助您自动安装pip。

    3.检查“C:\Python27\Lib\site-packages\pip*”,如果不存在,说明你的安装有误。

    4.在您的系统环境路径中添加“C:\Python27;C:\Python27\Scripts”。

    5.cmd工具中的“python”检查你的python版本是否为“2.7.12”。

    6.cmd工具中的“pip install requests”。

    7.检查“C:\Python27\Lib\site-packages\requests”。

    如果一切都已正确完成,您将成功导入请求。

    安装链接是https://www.python.org/downloads/release/python-2712/

    【讨论】:

    • 谢谢,我试试看:)
    • 嗨,我按照你的步骤做了,但我仍然遇到同样的错误:/
    • @plzhelp.文件夹“C:\Python27\Lib\site-packages\requests”在吗?
    • 有什么方法可以通过电子邮件或其他方式与您联系吗?
    • 我的邮箱是 jiahillegass@gmail.com。
    猜你喜欢
    • 1970-01-01
    • 2017-05-01
    • 2013-03-11
    • 2012-12-07
    • 2012-05-23
    • 2019-07-29
    • 2015-07-04
    • 2014-03-15
    • 2017-12-29
    相关资源
    最近更新 更多