写入文件但出现 ASCII 编码错误
Writing to a file but getting ASCII encoding error
我正在尝试从网站上的 table 抓取数据。
page_soup = soup(html, 'html.parser')
stat_table = page_soup.find_all('table')
stat_table = stat_table[0]
with open ('stats.txt','w') as q:
for row in stat_table.find_all('tr'):
for cell in row.find_all('td'):
q.write(cell.text)
但是,当我尝试写入文件时,收到此错误消息:'ascii' codec can't encode character '\xa0' in position 19: ordinal not in range(128).
我明白应该用.encode('utf-8')编码,但是
cell.text.encode('utf-8')
不起作用。
如有任何帮助,我们将不胜感激。使用 Python 3.6
文件编码由当前环境决定,在本例中假定为 ascii。您可以直接使用指定文件编码:
with open ('stats.txt', 'w', encoding='utf8') as q:
pass
我正在尝试从网站上的 table 抓取数据。
page_soup = soup(html, 'html.parser')
stat_table = page_soup.find_all('table')
stat_table = stat_table[0]
with open ('stats.txt','w') as q:
for row in stat_table.find_all('tr'):
for cell in row.find_all('td'):
q.write(cell.text)
但是,当我尝试写入文件时,收到此错误消息:'ascii' codec can't encode character '\xa0' in position 19: ordinal not in range(128).
我明白应该用.encode('utf-8')编码,但是
cell.text.encode('utf-8')
不起作用。
如有任何帮助,我们将不胜感激。使用 Python 3.6
文件编码由当前环境决定,在本例中假定为 ascii。您可以直接使用指定文件编码:
with open ('stats.txt', 'w', encoding='utf8') as q:
pass