2013-05-29 123 views
12

這是我第二天使用Selenium 2庫,並且Unicode的痛苦似乎沒有消退。Selenium webdriver和unicode

我只是做最基本的操作,要打印頁面的源代碼:

from selenium import webdriver 


driver = webdriver.Firefox() 
driver.get("http://google.com") 

print driver.page_source 

果然,我得到一個錯誤:

UnicodeEncodeError: 'ascii' codec can't encode character u'\u0119' in position 62045: 
ordinal not in range(128) 

我怎麼能請編碼這utf-8

回答

18

您有選擇,基於此類似question

您可以將源代碼轉換爲在進程中丟失Unicode字符的所有ascii。

(driver.page_source).encode('ascii', 'ignore')

或者說,我想你會喜歡這個,你可以將其編碼爲UTF-8這樣的: (driver.page_source).encode('utf-8')