浙江大学陈越做的刷题网站,如何做外贸品牌网站建设,凡客数据,wordpress手机页面7篇Python爬虫实例#xff0c;可直接运行#xff0c;适合收藏
python爬虫7篇实例#xff0c;分七个文章进行发布#xff1b;第二篇#xff1a;爬取图片信息。
爬取图片信息#xff0c;并将每张图片都下载下来。 爬虫主要三部分#xff1a; 1、获取数据 2、数据解析 3、…7篇Python爬虫实例可直接运行适合收藏
python爬虫7篇实例分七个文章进行发布第二篇爬取图片信息。
爬取图片信息并将每张图片都下载下来。 爬虫主要三部分 1、获取数据 2、数据解析 3、调用函数 先上完整代码 代码后面进行一步步解析。
import requests
from bs4 import BeautifulSoup
import osindex range(2,5)
urls []
for i in index:urls.append(fhttps://pic.netbian.com/4kdongman/index_{i}.html)# https://pic.netbian.com/tupian/34851.html# 传入单个网页获取网页上所有得图片链接
def craw_single_url(url):re requests.get(url)re.encoding gbksoup BeautifulSoup(re.text,html.parser)pics_links soup.find_all(img)links []for link in pics_links:if uploads not in link[src]:continuelinks.append(fhttps://pic.netbian.com{link[src]})return links# 传入图片链接将图片下载到文件夹中
def imgs_download(links):for link in links:re requests.get(link)pic_name os.path.basename(link)with open(f图片/{pic_name},wb) as f: # w : 写入 b : 二进制写入f.write(re.content)# 循环爬取的网页链接将所有网页的 links 放入元组中
links []
for url in urls:for link in craw_single_url(url):links.append(link)# 将所有的 link 图片下载下来
imgs_download(links)1、获取数据
该函数是获取该 url 链接下所有图片的链接函数返回值是所有图片的链接
def craw_single_url(url):re requests.get(url) # 请求 urlre.encoding gbk # gbk格式soup BeautifulSoup(re.text,html.parser) # 创建一个 BeautifulSoup 对象之后对其解析pics_links soup.find_all(img) # 在soup 中找到 img 的链接links []for link in pics_links: # 循环每个链接if uploads not in link[src]: # 判断是否正确的链接continuelinks.append(fhttps://pic.netbian.com{link[src]}) # 构建真正的图片链接return links2、数据解析
对获取到的图片 urls 进行解析循环 urls 下载图片到指定文件中
def imgs_download(links): # 下载图片函数for link in links: # 对传入图片链接进行循环re requests.get(link) # 请求单个链接pic_name os.path.basename(link) # 获得图片的名字with open(f图片/{pic_name},wb) as f: # 打开 图片 文件夹进行写入 w : 写入 b : 二进制写入f.write(re.content) # 将图片保存到 图片 文件夹3、进行调用
# 循环爬取的网页链接将所有网页的 links 放入元组中
links []
for url in urls: # 循环每个页面for link in craw_single_url(url): # 将每个页面得到的图片urls放入 links列表 links.append(link) # 放入 links列表 # 将所有的 link 图片下载下来
imgs_download(links) # 再调用 imgs_download 函数对每张图片进行下载