python 爬数据

shwwxw 2012-02-25 01:38:19
我现在要爬某个网页的数据,先登陆,登陆后戴上cookie去爬
self.br.setCookie(cookie)
page = self.br.open(url).read()
soup = BeautifulSoup(page)
此处,page 中文显示正常,但是编码格式是ISO8859-2,然后soup 中文就全部变成乱码了 soup.originalEncoding = windows-1252,截取 soup 一部分如下
<p class="W_textb W_linkd_a">
æ ‡ç­¾ï¼š<a href="&tag=%25E6%25B8%25B8%25E4%25BA%25BA%25E5%25AD%25A6%25E7%258C%25A9%25E7%258C%25A9&Refer=SUer_tag" onclick="GB_SUDA._S_uaTrack('tblog_search_v4','user_feed_tag_2');">游人学猩猩</a> <a href="&tag=%25E8%2589%25BA%25E4%25BA%25BA%25E5%25BD%2593%25E6%2598%258E%25E6%2598%259F&Refer=SUer_tag" onclick="GB_SUDA._S_uaTrack('tblog_search_v4','user_feed_tag_2');">艺人当明星</a> </p>
<p class="W_textb W_linkd_a">
æ•™è‚²ä¿¡æ ¯ï¼š<a href="&school=%25E4%25B8%258A%25E6%25B5%25B7%25E6%2588%258F%25E5%2589%25A7%25E5%25AD%25A6%25E9%2599%25A2&Refer=SUer_school" onclick="GB_SUDA._S_uaTrack('tblog_search_v4','user_feed_sch_2');">上海æˆ?剧学院</a> </p>
当不加cookie时,爬取下来完全正常page的编码格式是utf-8
有没有办法能使之正常显示中文
ps:加cookie爬取这个网站的其他页面是没有问题的
...全文
223 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
shwwxw 2012-02-27
  • 打赏
  • 举报
回复

已经知道原因,page的编码格式显示错误,并不是ISO8859-2,依然是utf-8
只要decode('utf-8','ignore').encode('utf-8')就可以了
Gloveing 2012-02-26
  • 打赏
  • 举报
回复
把得到的数据decode

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧