|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
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 编辑
我来试试,看能不能爬出来
中间有些空行,用鼠标往下拖,就有内容了。
|
|