2015-10-02 76 views
1

我在做一個簡單的報廢器,看看我是否可以從我製作的HTML中獲得所需的輸入值。它始終顯示作爲答案,所以我用更簡單的東西簽入,在html中的< title>。爲什麼BeautifulSoup沒有在HTML中顯示標題

from bs4 import BeautifulSoup # parsing 
r = open("C:/Python27/Pruebas/pruebahtml.html") 
print(r.read()) 

soup = BeautifulSoup(r,"html.parser") 
title = soup.title 
print(title) 
r.close() 

但我仍然得到作爲一個答案,我也用的findAll,find_all,找到要做到這一點,但我得到了一些錯誤。有誰知道我的錯誤在哪裏?

+0

相關:http://stackoverflow.com/questions/3906137/why-cant-i-call-read-twice-on-an-open-file。 – alecxe

+0

謝謝,我忘了 現在我的問題是..如果用戶在HTML中輸入並單擊按鈕,我可以讀取他/她使用此輸入? –

回答

2

你傳遞一個空字符串BS4因爲print(r.read())移動指針到文件的末尾,去掉print(r.read())並將它傳遞給BeautifulSoup(或致電r.seek(0)和通過。一旦你調用read,readline或遍歷一個文件對象,迭代器就會被消耗掉,所以沒有什麼可讀的。

+0

謝謝,我忘記了。現在我的問題是..如果用戶在html中輸入內容並單擊按鈕,我可以讀取他/她使用此輸入所做的輸入嗎? –

+0

@JoshuaCazares,你會更好地爲這個問題提出一個新問題。 –

+0

這一切都取決於你如何得到的HTML首先,確保如果你問另一個問題,添加一個清晰的例子,你想要什麼。 –