赞
踩
import requests import lxml from bs4 import BeautifulSoup """ 整体思路 1.伪装浏览器构造请求,获取网页内容即HTML源码 2.使用美味汤的强大功能获取图片链接 3.使用文件处理的基本操作将图片下载到本地 """ count = 1 #用于记录图片个数 def getResponse(page): #获取指定URL网页内容 url = "https://www.qiushibaike.com/imgrank/page/{}/".format(page) headers = {"Mozilla":"/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36"} #模拟浏览器向服务器发送请求 response =requests.get(url,headers).text #获取网页HTML源码,需进行格式转换 return response def getLink(page): #获取图片链接 response = getResponse(page) soup = BeautifulSoup(response,'lxml') #创建美味汤对象 for div in soup.find_all('div',class_="thumb"): for img_tag in div.find_all('img'): # print(img_tag.get('src')) # #可能由于糗事百科网站具有反爬机制,我们得到的图片链接并不是有效地址,需加上响应协议 img_url = "http:"+img_tag.get('src') saveImg(img_url) def saveImg(img_url): global count response = requests.get(img_url) with open ("./搞笑图片/{}.jpg".format(count),'ab') as f: #要先创建文件夹才能将图片写入文件夹,我创建在当前目录下 f.write(response.content) count+=1 if __name__ == "__main__": for page in range(1,6): #我们先爬取前五页的图片,可根据不开心程度调整爬取页数!!! getLink(page) ## 感觉写的还不错的小伙伴点个赞再走吧,
运行结果如下:
主页还有关于这篇文章的视频,感兴趣的小伙伴可以看一看
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。