2014-08-27 155 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