python3 爬取图片的实例代码

关于“python3 爬取图片的实例代码”的完整攻略,我可以提供以下参考。

标准流程

  1. 确定目标网站和具体的爬取页面
  2. 分析页面结构和请求方式,确定获取图片的方式
  3. 使用Python的requests库向目标页面发起请求,并解析响应内容
  4. 通过正则表达式或BeautifulSoup等HTML解析库,从得到的HTML中提取图片链接
  5. 使用Python的urllib库或requests库,下载提取到的图片至本地

示例1:爬取CSDN博客封面图

以下是使用Python3实现的爬取CSDN博客封面图的示例代码:

import requests
import re

# 构造请求头信息
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"
}

# 发起请求获取HTML
url = 'https://blog.csdn.net/qq_38474570/'
res = requests.get(url, headers=headers).text

# 从HTML中提取博客封面图链接
regex = r'<img src="(.*?)" data-original="(.*?)" alt="Avatar">'
img_links = re.findall(regex, res)
#print(img_links)

# 逐个下载博客封面图
for i,link in enumerate(img_links):
    img_url = link[1]
    img_name = 'img' + str(i+1) + '.jpg'
    img_res = requests.get(img_url, headers=headers)
    with open(img_name, 'wb') as f:
        f.write(img_res.content)
        print("Saved img %s" % img_name)

以上代码以CSDN博客为例,使用requests库发起请求获取HTML,使用正则表达式从HTML中提取博客封面图链接,然后使用requests库逐个下载博客封面图至本地。

示例2:爬取Unsplash随机图片

以下是使用Python3实现的爬取Unsplash随机图片的示例代码:

import requests
import json

# 构造请求头信息
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"
}

base_url = "https://source.unsplash.com/random/"

# 获取图片并保存到本地
for i in range(10):
    img_url = base_url + str(i+1)
    res = requests.get(img_url, headers=headers)
    img_name = 'img' + str(i+1) + '.jpg'
    with open(img_name, 'wb') as f:
        f.write(res.content)
        print("Saved img %s" % img_name)

以上代码以Unsplash为例,使用requests库构造随机图片请求URL,并使用requests库将图片逐个保存至本地。

希望能对你有所帮助!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python3 爬取图片的实例代码 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • 在python中将子集从大型数据库定向到不同的cpu

    【问题标题】:directing subsets from a large database to different cpus in python在python中将子集从大型数据库定向到不同的cpu 【发布时间】:2023-04-02 06:03:01 【问题描述】: 我编写了一些 Python 代码,用于从大型数据库中提取信息,对数据库中的每个项目执行一…

    Python开发 2023年4月8日
    00
  • Mac下python包管理工具pip的安装

    下面是在Mac下安装pip的完整攻略: 安装pip 第一步:下载get-pip.py文件 打开终端(Terminal)应用程序,运行以下命令在https://bootstrap.pypa.io/get-pip.py下载get-pip.py文件: curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py 第…

    python 2023年5月14日
    00
  • Python实现在Excel文件中写入图表

    以下是Python实现在Excel文件中写入图表的完整实例教程。 前置条件 在开始之前,需要确保已经安装好以下两个Python包: openpyxl:用于读取和写入Excel文件。 matplotlib:用于绘制图表。 安装方法:在命令行中输入pip install openpyxl matplotlib。 实现过程 导入必要的包 首先需要导入openpyx…

    python 2023年5月13日
    00
  • python输出带颜色字体实例方法

    让我来详细讲解一下“python输出带颜色字体实例方法”的完整攻略吧。 1. 简介 在Python中,我们可以使用ANSI Escape Code来输出带颜色的字体。ANSI Escape Code是一些控制字符,可以用来在终端中控制文本的颜色、样式等属性。我们可以利用这些控制字符,来让Python输出带颜色的字体。 2. 实现方法 下面是Python输出带…

    python 2023年6月5日
    00
  • Python密码学XOR算法编码流程及乘法密码教程

    标题:Python密码学XOR算法编码及乘法密码教程 XOR算法编码流程 1.输入明文和密钥。 2.将明文和密钥转化为二进制。 3.将明文和密钥按位异或。若明文和密钥同一位为0或1,则异或结果为0,否则为1。 4.将异或后的结果转化为十六进制,即为密文。 示例1: 明文:hello 密钥:world 1.明文和密钥转化为二进制为: hello:0110100…

    python 2023年5月31日
    00
  • Python错误提示:[Errno 24] Too many open files的分析与解决

    当使用python处理大量文件时,可能会遇到“[Errno 24] Too many open files”的错误提示,也就是打开文件过多,超出了系统允许的最大文件打开数量限制。这个错误提示出现的原因是操作系统默认的最大打开文件描述符数量限制,解决方法有两个: 方法一:增加系统文件描述符限制 1. 通过命令行修改文件描述符限制 打开命令行,输入下面的命令可以…

    python 2023年6月6日
    00
  • python入门之基础语法学习笔记

    以下是关于“Python入门之基础语法学习笔记”的完整攻略: 问题描述 Python 是一种高级编程语言,易于学习和使用。本将介绍 Python 的基础语法,包括变量、数据类型、运算符、条件句、循环语句等。 解决方法 1. 变量 在 Python 中,变量是用来存储数据的容器。可以使用赋值语句来创建变量。示例代码如下: x = 10 y = "He…

    python 2023年5月13日
    00
  • 分析讲解Java Random类里的种子问题

    我将为您详细讲解“分析讲解Java Random类里的种子问题”的完整攻略。 分析讲解Java Random类里的种子问题 什么是Random类 Random类是Java中的一个随机数生成器类,可以用于生成伪随机数。Random类提供了多种方法,可以生成不同类型的随机数,例如整数、浮点数和布尔值等。Random类的实例化可以使用默认的无参构造函数,或者使用带…

    python 2023年6月3日
    00
合作推广
合作推广
分享本页
返回顶部