| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
最近刚开始学到爬虫的课程 
课后题目要求把下面网站的内容爬出来并保存,四个网址放在urls.txt里 
http://www.fishc.com 
http://www.baidu.com/ 
http://www.douban.com 
http://www.zhihu.com 
http://www.taobao.com 
 
我的程序运行没问题,但是就是百度爬出来就两行如下: 
<!DOCTYPE html> 
<!--STATUS OK--> 
 
其他四个网页爬出来都没问题。麻烦高手帮忙讲解一些这是什么原因,怎么样修改一下程序就能把baidu.com爬出来 
 
我的程序如下: 
 
from urllib import request 
import chardet 
 
def main(): 
    with open("urls.txt") as f: 
        urls=f.read() 
        urls=urls.split() 
         
    n=1 
    for url in urls: 
        req=request.Request(url) 
        req.add_header('User-Agent','Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36') 
        feedback=request.urlopen(req).read() 
        code=chardet.detect(feedback)['encoding'] 
        if code=='GB2312': 
            code='GBK' 
        response=feedback.decode(code,"ignore") 
         
        with open('url_%d.txt'%n,'w',encoding=code) as file: 
            file.write(response) 
 
        n+=1 
             
         
if __name__=="__main__": 
    main() 
 本帖最后由 XiaoPaiShen 于 2019-12-6 03:36 编辑  
 
我来试试,看能不能爬出来 
 
中间有些空行,用鼠标往下拖,就有内容了。 
 
 
 |   
 
 
 
 |