检索Google搜索结果页面的内容时出现此错误?
print driver.find_element_by_tag_name('body').get_attribute('innerHTML')
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe6' in position 15663: ordinal not in range(128)
我正在用PHP调用python脚本
exec('python selenium_scrape.py');
这解决了问题,但是所有unicode字符都将被编码两次
print driver.find_element_by_tag_name('body').get_attribute('innerHTML').encode('utf-8')
答案 0 :(得分:0)
这可能是因为您正在打印到使用ASCII(7位)编码的标准输出。使用使用utf-8的语言环境设置调用Python,或者首先将(unicode)HTML内容的某些适当编码转换为7位字符串。
答案 1 :(得分:0)
尝试在打印前对文本进行编码:
print driver.find_element_by_tag_name('body').get_attribute('innerHTML').encode("utf-8")