2014-08-27 87 views
0

我是从a training website在IPython中尝试这种Python代码:IPython的失败运行代码

from bs4 import BeautifulSoup 

import requests 

url = raw_input("www.google.com") 

r = requests.get("http://" +url) 

data = r.text 

soup = BeautifulSoup(data) 

for link in soup.find_all('a'): 
    print(link.get('href')) 

,发现它在第一次尝试运行得很好。我现在试着简单地重新启动内核,打开一个新的笔记本,并且通常将设置返回到我第一次运行程序时没有运气的状态。为什么IPython可能无法运行代码并且根本没有回应(好像我没有点击任何东西)?

回答

1

IPython不支持类似于raw_input。所以它可能只是挂在那里。如果你改变:

url = raw_input("www.google.com")

url = "www.google.com"

它应该工作。

+0

当我尝试得到'无效的语法'错误。我也怀疑,因为它出于某种原因使用括号语法第一次工作。虽然谢谢! – 2014-08-28 14:47:35

+0

@MaxPower所以你说你第一次成功运行它实际上促使你输入? 'raw_input'的第一个参数是提示文本。所以“www.google.com”在这里并没有多大意义。像“输入链接提取链接:”会更有意义。 – Jack 2014-08-28 17:54:14

+0

你说得对。我完全误读了代码。这非常愚蠢。 – 2014-08-28 21:12:52