2015-03-30 110 views
-3

我遇到了一些試圖讓Python運行(Python 3.4)的問題,並且我希望有人能幫助我並指出我的代碼中的錯誤。美麗的湯的Python語法幫助

我試圖從網站屏幕刮黃頁電話號碼,但我不斷收到「解析時SyntaxError:意外的EOF」,但我沒有足夠的經驗足以找到我的代碼中的錯誤。

from bs4 import BeautifulSoup 

import requests 

Company = raw_input("Enter a Company to extract the Phone Number: ") 

Location = raw_input("Enter State: ") 

r = requests.get("http://www.yellowpages.com/search?search_terms=" +Company +"&geo_location_terms=" +Location) 

# http://www.yellowpages.com/search?search_terms=[Company]&geo_location_terms=[Location] 

data = r.text 

soup = BeautifulSoup(data) 

for link in soup.find_all('a'): 
    print(link.get('phones.phone.primary') 
+0

我強烈建議使用自動關閉parens,括號,引號等的文本編輯器/ IDE。生活太短而無法計算括號 - 這也是爲什麼我不使用Lisp :) – MattDMo 2015-03-30 18:48:36

+0

另外,如果您真正使用Python 3.4,那麼你對'raw_input()'的調用將不起作用,因爲它只存在於Python 2中。將它改爲'input()',你就全部設置好了。 – MattDMo 2015-03-30 18:50:55

+0

謝謝你們。我將raw_input()更改添加到input()並使其工作更好。我爲我的python腳本使用了Notepad ++。你們有其他推薦的計劃嗎?我對編程很陌生 – 2015-03-30 18:54:40

回答

3

您在腳本的最後一行遺漏了右括號。它應該是:

print(link.get('phones.phone.primary')) 

錯誤消息意味着Python在查找右括號時到達文件(「EOF」)的末尾。

+0

darn,打我吧 – 2015-03-30 18:46:17

+0

謝謝你們。有點尷尬,我錯過了。 – 2015-03-30 18:50:57

+0

@TravisGerken如果這有助於解決您的問題,請點擊答案旁邊的複選標記(將其變爲綠色)考慮[接受](http://stackoverflow.com/help/accepted-answer)。這標誌着問題有一個可以接受的答案,併爲您和回答者頒發[聲譽](http://stackoverflow.com/help/whats-reputation)。 – MattDMo 2015-03-30 19:27:08