Day4
响应对象的属性:
r.encoding: 从http header中猜测响应内容的编码方式
r.apparent_encoding: 从内容中分析出的响应内容编码方式(备选编码方式)
r.status_code: http请求的返回状态,200表示连接成功,其余代号表示失败
r.text: 是指http响应内容的字符串形式,即,url对应的页面内容
r.content: http响应内容的二进制形式
练习:在网易云上爬取下载收费歌曲
import requests
import time
url = "https://m10.music.126.net/20180921131903/e0e9565a89407317dc84b8187e85241c/ymusic/341e/9cc2/7c4f/b13ac6e62d3625524dde95fd1b1628bf.mp3"
path = "D:\爬虫储存/歌曲可不可以 .mp3"#下载文件存储位置路径
user = {'user-agent': 'Mozilla/5.0'}#头文件上披上火狐浏览器的标志
try:
r = requests.get(url,headers = user)
print(r.status_code)
r.raise_for_status()
with open(path, 'wb') as f:
f.write(r.content)
r.close()
print("文件保存成功")
except:
print("爬取失败")