最近用Python写了些爬虫,在爬取一个gb2312的页面时,抛出异常:

  1. UnicodeEncodeError: 'ascii' codec can't encode characters in position 21-23: ordinal not in range(128)

解决方案如下:

首先设置系统的默认编码为utf-8:

  1. import sys
  2. reload(sys)
  3. sys.setdefaultencoding('utf-8')

然后将网页以gbk解码后转为utf-8:

  1. result = urllib2.urlopen(req).read()
  2. result = unicode(result,'GBK').encode('UTF-8')

之后就正常了。

最新文章

  1. Mac制作U盘系统(OS X El Capitan)教程
  2. boneCP原理研究
  3. Linux Bash代码 利用for循环实现命令的多次执行
  4. struts2拦截器拦截成功后每次请求都出现拦截时的错误信息
  5. shell中的比较语句
  6. Windows 右键添加「cmd 打开」
  7. 关于Azure Auto Scale的高级属性配置
  8. 微信iOS WKWebview 网页开发适配指南
  9. 随想录(移动app下的生活)
  10. PHP微信支付开发之扫描支付(模式二)后如何回调
  11. 关于mui选择器的使用
  12. APP的三种开发模式
  13. CNN解析和模型分析
  14. Spring Boot @EnableWebMvc 与 mvc 配置
  15. Zephyr学习(五)线程和调度
  16. 使用Pabot并行运行RF案例
  17. 跳转到页面的某个anchor
  18. HTML5 标签实例
  19. OC中Runtime浅析
  20. python 菜鸟入门

热门文章

  1. PID控制器开发笔记之四:梯形积分PID控制器的实现
  2. Confluence 6 配置 XSRF 保护
  3. Swift 中 insetBy(dx: CGFloat, dy: CGFloat) -> CGRect 用法详解
  4. PDF文件如何标注,怎么使用PDF标注工具
  5. Advanced Wlan Attacks (RADIUS)
  6. 在一些开源框架中,dist文件夹是什么意思
  7. Java Insets获取窗口的顶、底、左、右的大小
  8. linux学习笔记之 basename, dirname
  9. spring cloud 自定义ribbon客户端
  10. xxl系列部署启动通用办法