2016-03-05 107 views
0

我最近試圖從網站上獲取數據,但似乎我得到了一個我自己無法解決的錯誤。所以我開始環顧四周,看看有沒有其他人有我完全相同的錯誤,我發現3是準確的,我嘗試了所有3個解決方案,並且還有一些但似乎沒有工作。Python bs4'bytes'對象沒有'prettify'屬性

這裏是我的代碼:

import bs4 
from time import sleep 
import requests 
import os 
import sys 
import io 

sys.stdout = io.TextIOWrapper(sys.stdout.buffer,'cp437','backslashreplace') 

f = open('output.txt', 'w') 
f.close() 
project_name = 'reddit' 
url = 'https://www.reddit.com/' 
html = requests.get(url) 
soup = bs4.BeautifulSoup(html.text, 'html.parser').encode('utf-8') 

print(soup.prettify()) 

正如你可以看到我試過sys.stdout = io.TextIOWrapper(sys.stdout.buffer,'cp437','backslashreplace')將其用另一個線程別人建議,但遺憾的是它並沒有我的情況下工作。

如果任何人都知道解決方案,將非常感謝,提前感謝。

納奧米,

+1

爲什麼你打開文件,並關閉它隨即?你想將輸出寫入文件嗎? –

回答

1

刪除.encode('utf-8')

soup = bs4.BeautifulSoup(html.text, 'html.parser') 
相關問題