2017-02-22 128 views
0

這是一本python書籍的例子。當我運行它時,我沒有得到任何輸出。有人能幫我嗎?謝謝!!!爲什麼python2.7的代碼沒有任何輸出?

from urllib import urlopen 
from BeautifulSoup import BeautifulSoup 

text = urlopen('https://python.org/community/jobs').read() 
soup = BeautifulSoup(text) 

jobs = set() 
for header in soup('h3'): 
    links = header('a', 'reference') 
    if not links: continue 
    link = links[0] 
    jobs.add('%s (%s)' % (link.string, link['href'])) 
    print jobs.add('%s (%s)' % (link.string, link['href'])) 

print '\n'.join(sorted(jobs, key=lambda s: s.lower())) 

reedit-- 首先,我只考慮URL是錯誤的,但忽視了HTML信息來源我想獲得不存在。可能是這是爲什麼我得到空輸出。

+0

有人猜測,我會說「湯(h3)」是空的或「鏈接」總是空的。你能用你希望從你的'urlopen'行中得到的那種文本來更新這個問題嗎? – ymbirtt

回答

1

如果你打開頁面並檢查html,你會發現沒有<h3>標籤包含鏈接。這就是爲什麼你沒有輸出。

所以if not links: continue總是繼續。

這可能是因爲頁面已移至https://www.python.org/jobs/,因此包含頁面上鍊接的<h3>標籤不再存在。

如果您將此代碼的URL指向新頁面。我建議使用一些時間來熟悉頁面源代碼。例如,它的鏈接使用<h2>而不是<h3>標籤。

相關問題