忽然心血来潮,逛豆瓣电影的时候,发现明星相册里的图片还挺多的,于是就想着把相册里的所有照片爬下来
刚开始我就查看页面源码,发现照片的链接是以webp结尾,直接下载的文件格式依然是.webp,(查了一下,目前只有Google和opera在用webp,用别的浏览器看到的还是.jpg)发现直接将webp转成jpg,对于我这个菜狗来说有难度,于是想到改后缀名的方法
后来我发现可以直接在请求头设置接受你所需要格式的图片
headers = {
"referer": "https://movie.douban.com/",
"User-Agent":"Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36", # 自己使用的浏览器
"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/jpg,*/*;q=0.8",
"Accept-Encoding": "gzip, deflate, sdch"
}
如果需要webp格式,直接将"Accept"里的image参数改成webp
之后我们观察一下我们需要爬取照片所在的标签,它被class = "cover"标签包含,这是我们就可以匹配了,再将src后面的链接取出存进列表中
def find_src(html):
soup = bs4.BeautifulSoup(html, "lxml")
for i in soup.find_all(c