NameError:未定义名称'requests'

时间:2014-11-12 19:52:34

标签: python compiler-errors python-import

我已将此代码作为帮助" Python getting all links from a google search result page"

当我尝试在Python 3.3.3中导入请求时,我得到NameError: name 'requests' is not defined。我测试了"请求"和" bs4"使用CMD提示的模块,两者都显示已安装此库。

我正在尝试从Google搜索结果中提取相关的搜索链接,但我不知道为什么会收到此错误。

from bs4 import BeautifulSoup
page = requests.get("https://www.google.dz/search?q=see")
soup = BeautifulSoup(page.content)
import re
links = soup.findAll("a")
for link in  soup.find_all("a",href=re.compile("(?<=/url\?q=)(htt.*://.*)")):
    print (re.split(":(?=http)",link["href"].replace("/url?q=","")))

Error: Traceback (most recent call last):
  File "C:/Users/DELL/Desktop/python/s/beauti.py", line 2, in <module>
    page = requests.get("https://www.google.dz/search?q=see")
NameError: name 'requests' is not defined

1 个答案:

答案 0 :(得分:11)

安装requests

pip install requests

并改变你的代码:

from bs4 import BeautifulSoup 
import requests 
page = requests.get("https://www.google.dz/search?q=see") 
soup = BeautifulSoup(page.content) 
links = soup.findAll("a") 
for link in links: 
    if link['href'].startswith('/url?q='): 
        print (link['href'].replace('/url?q=',''))