【问题标题】:Selenium webdriver and unicodeSelenium webdriver 和 unicode
【发布时间】:2013-05-25 06:09:06
【问题描述】:

这是我使用 Selenium 2 库的第二天,使用 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

【问题讨论】:

    标签: python selenium unicode


    【解决方案1】:

    你有选择,基于这个类似的question

    您可以将源转换为所有在此过程中丢失 Unicode 字符的 ascii。

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

    或者,我认为您会更喜欢这个,您可以将其编码为 utf-8,如下所示: (driver.page_source).encode('utf-8').

    【讨论】:

      【解决方案2】:

      请使用print(repr(string)) to return a printable representation of the object,而不是print(string)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-06-24
        • 2020-08-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-03-09
        相关资源
        最近更新 更多