我正在尝试使用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>
我想检索下午3点30分到下午5点30分,这是在 validTime
之间在检查页面中的元素后,我发现下午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
我还使用“点子列表”查看我是否已经安装了请求,这就是我所得到的:
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 :(得分: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路径[ex。 C:\ Users \用户名\应用程序数据\本地\程序\的Python \ Python35-32]
答案 1 :(得分:-1)
首先,让我讲述一些我的困惑。
在您的屏幕截图中:in the Lib within Python27 folder on my C drive。
首先,文件夹&#34; ensurepip&#34;意味着它可以帮助你安装pip,但你没有&#34; site-packages&#34;目录,这意味着pip还没有安装在python版本中。
第二,文件夹&#34; python2&#34;一直在那里。它为什么存在?
第三,如果您已经安装了&#34;请求&#34;使用pip命令&#34; pip安装请求&#34;,为什么需要复制&#34;请求&#34;以及你的请求&#34;来自?
解决方案很好。
1.uninstall你的python。
2.install python 2.7.12 msi in&#34; C:\ Python27&#34;这将帮助您自动安装pip。
3.检查&#34; C:\ Python27 \ Lib \ site-packages \ pip *&#34;,如果它不存在,则安装错误。
4.add&#34; C:\ Python27; C:\ Python27 \ Scripts&#34;在您的系统环境路径中。
5&#34;蟒&#34;在cmd工具中检查你的python版本是&#34; 2.7.12&#34;或不。
6。&#34; pip安装请求&#34;在cmd工具中。
7.检查&#34; C:\ Python27 \ Lib \ site-packages \ requests&#34;。
如果所有操作都已正确完成,您将成功导入请求。