设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
楼主: crossin先生
打印 上一主题 下一主题

【Python 第44课】 查天气(2)

  [复制链接]

1

主题

0

好友

35

积分

新手上路

Rank: 1

楼主
发表于 2017-12-18 14:30:46 |显示全部楼层
Hello
我这边write后面跟的str,但是录入以后出来的HTML文件并不是百度的网址。但是如果不用str系统又提示不能write bytes
这个情况该怎么办?

360截图20171218142530457.jpg (60.52 KB, 下载次数: 238)

360截图20171218142530457.jpg

360截图20171218142541100.jpg (31.87 KB, 下载次数: 246)

360截图20171218142541100.jpg

360截图20171218142549977.jpg (168.89 KB, 下载次数: 240)

360截图20171218142549977.jpg

回复

使用道具 举报

1

主题

0

好友

35

积分

新手上路

Rank: 1

沙发
发表于 2017-12-19 09:57:06 |显示全部楼层
TED 发表于 2017-12-18 16:12
content = web.read().decode('utf-8') 试下,把bytes转化为unicode

还是不行
  1. RESTART: C:/Users/lenovo/AppData/Local/Programs/Python/Python37-32/asfdgggfdsfgghsf.py
  2. Traceback (most recent call last):
  3.   File "C:/Users/lenovo/AppData/Local/Programs/Python/Python37-32/asfdgggfdsfgghsf.py", line 12, in <module>
  4.     out.write(data)
  5. UnicodeEncodeError: 'gbk' codec can't encode character '\xbb' in position 27363: illegal multibyte sequence
  6. >>>




  7. [code]import urllib.request


  8. url=('http://www.baidu.com')

  9. web=urllib.request.urlopen(url)
  10. content=web.read().decode('utf-8')


  11. data=content
  12. out=open('C:/Users\lenovo\Desktop\youyouyou\shiyan.html','w')
  13. out.write(data)
  14. out.close()
复制代码
[/code]
回复

使用道具 举报

1

主题

0

好友

35

积分

新手上路

Rank: 1

板凳
发表于 2017-12-19 15:04:24 |显示全部楼层
TED 发表于 2017-12-19 13:20
要写入的html文件的话,就不用解码
content=web.read()
然后用‘wb’的模式把bytes写入文件:

写入wb格式成了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-5-19 17:06 , Processed in 0.027130 second(s), 23 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部