2016-07-19 59 views
-2

我试图从使用BeautifulSoup的天气网站检索数据。该网站的样本:ImportError:无模块命名请求

<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> 

我想找回下午3:30至5时30分这是validTime

之间

从页面检查元素后,我发现,下午3:30至5时30分在“类=文本” 跨度元素中:

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 

然而,当我运行代码,我得到了一个错误说“导入错误:没有模块名的请求”

我已经下载请求,并把他们in the Lib within Python27 folder on my C drive

我还用检查“PIP清单”,看看我是否已经安装了请求,这是我得到了什么:

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

正如你所看到的请求已经被下载了我的C盘(C:\ Python27 \ Scripts中)

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

+0

您是否确定在运行时使用了正确的Python可执行文件?您可能已经为一个版本安装了“请求”,然后尝试用另一个版本执行代码。 –

+0

如何检查我使用的是否正确? – plzhelp

+0

我的python版本是2.7.12! – plzhelp

回答

-1

首先,让我说说我的一些混乱。

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

首先,文件夹“ensurepip”意味着它可以帮助您安装pip,但您没有“site-packages”目录,这意味着pip尚未安装在python版本中。

其次,文件夹“python2”已经存在。为什么在那里?第三,如果你用pip命令“pip安装请求”安装了“请求”,为什么你需要复制“请求”和你的“请求”来自哪里?

解决方案很受打击。

1.卸载你的python。

2.install“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安装请求“。

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

如果所有操作都已正确完成,您将成功导入请求。

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

+0

谢谢,我会给它一个尝试:) – plzhelp

+0

嗨,我遵循年份的步骤,但我仍然得到相同的错误:/ – plzhelp

+0

@ plzhelp.Is文件夹“C:\ Python27 \ Lib \ site-packages \请求“在那里? –

0

我解决这个问题,因为

>>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]

相关问题