Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
文件编码中的Python错误_Python_Beautifulsoup_Encode - Fatal编程技术网

文件编码中的Python错误

文件编码中的Python错误,python,beautifulsoup,encode,Python,Beautifulsoup,Encode,我对文件编码有问题。它可以工作,但问题是我什么时候要用BS4编码的文件进行解析 # encoding: utf-8 import codecs from bs4 import BeautifulSoup f1 = codecs.open("1.txt", "r", "utf-8") text = f1.read() soup = BeautifulSoup(text.encode('utf-8')) for tr in soup.find_all('tr'): zeit = tr.

我对文件编码有问题。它可以工作,但问题是我什么时候要用BS4编码的文件进行解析

# encoding: utf-8
import codecs
from bs4 import BeautifulSoup

f1 = codecs.open("1.txt", "r", "utf-8")
text = f1.read()


soup = BeautifulSoup(text.encode('utf-8'))
for tr in soup.find_all('tr'):
    zeit = tr.find('td', class_='zeit').get_text(strip=True)
    system = tr.find('td', class_='system').get_text(strip=True)
    fehlertext = tr.find('td', class_='fehlertext').get_text(strip=True)
    print zeit, system, fehlertext


Result: UnicodeEncodeError: 'ascii' codec can't encode character u'\xfc' in position 27: ordinal not in range(128)
-bash-3.2$

尝试记录ascii并忽略错误。encode('ascii','ignore')请发布完整的回溯-我们无法判断在哪一行引发了异常。FWIW如果在“print”语句中,则问题在于标准输出流未处理unicode(BS始终返回unicode),因此必须根据系统设置进行正确编码(或修复系统设置以处理utf8)。错误。encode('ascii','ignore')解决了我的问题;)很多thx!