python - 爬虫内容保存成文本文件 编码问题
欧阳克
欧阳克 2017-06-12 09:26:21
0
1
789

测试一个非常简单的爬虫,把一个非常简约风格的网页的文本内容保存到本地的电脑上。最后出现错误:

UnicodeEncodeError Traceback (most recent call last)  in () 7 filename=str(i)+'.txt' 8 with open(filename,'w')as f: ----> 9 f.write(content) 10 print('当前小说第{}章已经下载完成'.format(i)) 11 f.close() UnicodeEncodeError: 'gbk' codec can't encode character '\xa0' in position 7: illegal multibyte sequence

代码如下:

In [1]: import requests In [2]: from bs4 import BeautifulSoup In [3]: re=requests.get('http://www.qu.la/book/168/') In [4]: html=re.text In [5]: soup=BeautifulSoup(html,'html.parser') In [6]: list=soup.find(id="list") In [9]: link_list=list.find_all('a') In [14]: mylist=[] ...: for link in link_list: ...: mylist.append('http://www.qu.la'+link.get('href')) ...: ...: #遍历每个链接,下载文本内容到 本地文本文件 i=0 ...: for url in mylist1: ...: re1=requests.get(url) ...: html2=re1.text ...: soup=BeautifulSoup(html2,"html.parser") ...: content=soup.find(id="content").text.replace('chaptererror();', '') ...: filename=str(i)+'.txt' ...: with open(filename,'w')as f: ...: f.write(content) ...: print('当前小说第{}章已经下载完成'.format(i)) ...: f.close() ...: i=i+1
欧阳克
欧阳克

温故而知新,可以为师矣。 博客:www.ouyangke.com

全部回复 (1)
给我你的怀抱
f.write(content.encode('utf-8'))

或者

import codecs with codecs.open(filename, 'w', 'utf-8') as f: f.write(content)
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板
    关于我们 免责声明 Sitemap
    PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!