已采纳回答 / 慕无忌8307576
原因:Python默认是以ASCII作为编码方式的,如果在自己的Python源码中包含了中文(或者其他的语言,比如小日本的日语……),此时即使你把自己编写的Python源文件以UTF-8格式保存了;但实际上,这依然是不行的。解决方法:在源码的第一行添加以下语句:# -*- coding: UTF-8 -*- 或者 #coding=utf-8(注:此语句一定要添加在源代码的第一行)
2017-07-16
已采纳回答 / 哈_Alexkun
一般英文不会乱码,中文可能乱码。有可能是库版本问题,比如教程里是Python2.7,urllib2,以及文档首行声明utf-8;还有问题的话看能否设置输出编码,windows可能采取默认的GBK编码,OSX下没有问题。
2017-07-02
已采纳回答 / 华灯初上丶
楼主,我研究了一个晚上,from bs4 import BeautifulSoup报错No module named 'bs4'问题,琢磨了一个方法。首先,我使用的IDE是PyCharm Python版本3.6,在file选项中选择settings选项点进去<...图片...>然后选择Pro...
2017-06-20
已采纳回答 / mk充满爱与正义
如果是URL部分乱码/item/%E7%BC%96%,是因为url采用了再编码--&te(16进制编码解决方法:调用urllib.parse.unquote("/item/%E7%BC%96%")来变回中文注意:变回中文的URL无法用urllib.request.urlopen(URL)来访问,可以在最...
2017-06-18
已采纳回答 / 请叫我百度
第一:baike_spider是你创建的包,你所说的url_manager肯定是放在包中的代码,是可以import进去了。第二:只爬取一个网址就结束应该是html_parser中的代码有问题,比如课程中的匹配策略与现在的百度Python词条不匹配,需要改成href = re.compile(r"/item/.*") 再或者find_all 不要丢了下划线,我就没注意到下划线,所以只输出了1条记录就craw faild了。
2017-05-15
已采纳回答 / SiCheng_Sheen
我之前也遇到过这种情况,纠结了很久,最后才发现一个非常重要的问题,百度的词条信息发生了变化,你可以仔细看看,现在不再是以 .htm结尾了,之前在html_parser模块中的正则表达式已经失效了,原来是href=re.compile(r"/view/\d+\.htm"),现在应该改为href=re.compile(r'/item/\w+')。这也再次证明了在采集数据前,一定要对目标进行仔细认真的分析!
2017-05-05