python爬虫批量下载好看的图片

目录

前言

函数介绍

库函数介绍 

函数1 

函数2

函数3 

主函数 

完整代码 

总结


前言

本次写的爬虫程序是爬取网站上的图片,所用的网站请详见代码。


函数介绍

主要是通过对网站上内容进行解析提取,从而获取到图片所对应的下载链接,从而实现批量下载,其他网站图片爬取方法类似。


库函数介绍 

import re#解析接收到的网页源码
import requests#发送网页请求

引入库函数,没有的小伙伴可以进行下载。

下载方法1:windows下>cmd>输入:pip install requests/pip install re

下载方法2:pycharm>setting>project:文档名称


函数1 

def http_s(baseurl):
    for i in range(0,30):#爬取第一到第30页,可更改
        url=baseurl+str(i)
        # print(url)
        getphoto(url)#解析函数中传入网址,开始解析爬取图片

解析函数中传入网址,开始解析爬取图片 


函数2

def getphoto(url):
    #headers封装
    headers={
        "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36 Edg/100.0.1185.44"
    }
    #网站访问
    response=requests.get(url,headers=headers)
    # print(response.text)
    html_re=response.text
    
    #解析数据
    link=re.compile(r'<img fifu-featured="1" width="520" src="(.*?)"',re.S)
    link_w=re.findall(link,html_re)
    #向图片链接进行访问
    for img in link_w:
        #图片名字
        img_name=img.split('/')[-1]#将网页进行拆分,拿出图片名
        # print(img_name)
        img_data=requests.get(img).content#获取数据
        # print(img_data)
    #保存数据
        with open(f'img/{img_name}',mode='wb') as f:#注意需要手动新建一个img文件夹,不然会出现报错
            f.write(img_data)
        print("正在爬取",img_name)
解析函数,进行网页解析,图片保存。

主函数 

#主函数调用
if __import__(__name__):
    main()

完整代码 

import re#解析接收到的网页源码
import requests#发送网页请求
def main():
    baseurl = "https://www.kanxiaojiejie.com/page/"
    http_s(baseurl)
#用来生成网站地址
def http_s(baseurl):
    for i in range(0,30):#爬取第一到第30页,可更改
        url=baseurl+str(i)
        # print(url)
        getphoto(url)#解析函数中传入网址,开始解析爬取图片
#解析函数,进行网页解析
def getphoto(url):
    #headers封装
    headers={
        "user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36 Edg/100.0.1185.44"
    }
    #网站访问
    response=requests.get(url,headers=headers)
    # print(response.text)
    html_re=response.text

    #解析数据
    link=re.compile(r'<img fifu-featured="1" width="520" src="(.*?)"',re.S)
    link_w=re.findall(link,html_re)
    #向图片链接进行访问
    for img in link_w:
        #图片名字
        img_name=img.split('/')[-1]#将网页进行拆分,拿出图片名
        # print(img_name)
        img_data=requests.get(img).content#获取数据
        # print(img_data)
    #保存数据
        with open(f'img/{img_name}',mode='wb') as f:#注意需要手动新建一个img文件夹,不然会出现报错
            f.write(img_data)
        print("正在爬取",img_name)
#主函数调用
if __import__(__name__):
    main()

函数功能介绍 

总结


本次的小爬虫主要是爬取的网站上公开的图片,进行下载保存,喜欢的小伙伴点个赞吧!

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
当然可以!下面是一个使用Python编写的示例代码,用于批量下载网页上的图片: ```python import requests import os def download_images(url, save_folder): # 发送GET请求获取网页内容 response = requests.get(url) # 解析网页内容,获取图片链接 image_urls = parse_image_urls(response.text) # 创建保存图片的文件夹 if not os.path.exists(save_folder): os.makedirs(save_folder) for image_url in image_urls: # 发送GET请求下载图片 image_response = requests.get(image_url) # 提取图片文件名 image_name = image_url.split("/")[-1] # 拼接保存路径 save_path = os.path.join(save_folder, image_name) # 保存图片到本地 with open(save_path, "wb") as f: f.write(image_response.content) print(f"已下载图片:{save_path}") def parse_image_urls(html): # 解析网页内容,提取图片链接 # 这里需要根据具体的网页结构进行解析,可以使用正则表达式或者第三方库如BeautifulSoup等 # 这里仅作示例,不进行具体实现 image_urls = [] # ... return image_urls if __name__ == "__main__": url = "https://example.com" # 要爬取的网页URL save_folder = "images" # 图片保存的文件夹 download_images(url, save_folder) ``` 在上面的代码中,你需要将`url`变量替换为你要爬取的网页URL,`save_folder`变量替换为你想要保存图片的文件夹路径。你还需要根据具体的网页结构实现`parse_image_urls`函数,用于解析网页内容提取图片链接。 请注意,爬取网页上的图片需要遵守相关法律法规和网站的使用规定,确保获得合法授权或者遵循网站的使用条款。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值