Pytho批量下载网页图片以及数据

别再自己在网页上一个个下载图片了,python可以批量完成下载

效果展示

Pytho批量下载网页图片以及数据_第1张图片
Pytho批量下载网页图片以及数据_第2张图片
Pytho批量下载网页图片以及数据_第3张图片

前言

对于会python的人来说,网页下载图片是非常简单的操作,有时候只需要几秒钟就可以下载出你想要的图片,也可以进行批量下载。不用再像以往的一个一个的进行拖拽下载等,笨重方法。今天就给大家带来一个非常简单快速的方法,用python来批量下载图片。

效果图

Pytho批量下载网页图片以及数据_第4张图片
这是批量下载之后的几个图片,因为太多就没有全部展示。

环境

看完效果,我们应该怎么实现批量下载呢?这就需要用到Notepad++以及python了,那notepad++是干什么的呢?notepad++是Windows操作系统下的一套文本编辑器,而python是一门流行的编程语言,用于Web开发(服务器端)、软件开发、数学、系统脚本。在使用之前我们可以先安装notepad++,我们可以进入官网https://notepad-plus-plus.org/downloads/,然后python我们可以到W3c中进行下载(https://www.python.org/)
我们执行下列语句:
安装完成之后我们可以在环境中测试一下是否成功,我这里使用的是命令行窗口,线运行python.exe(前提是你已经配置了环境变量)

C:\Users\KING>pytho

然后在程序中运行如下代码:

Python 3.6.8 (tags/v3.6.8:3c6b436a57, Dec 24 2018, 00:16:47) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import paddle.fluid
>>> paddle.fluid.install_check.run_check()

下面我们就可以开始写代码了。

实现批量下载图片

实现下载批量图片的代码很简单,大概分为下面几个步骤:
1、导入模块
2、加载浏览器
3、准备好你所要下载图片的那个网址
4、获取文件
5、下载图片

实现起来没有什么难度,为了方便读代码,我将代码写的清楚一点:

#导入模块,当成打开浏览器
import requests
#准备网址
url='http://pic.netbian.com/e/search/result/?searchid=3343'
#访问网址
res=requests.get(url)
#设置编码
res.encoding='gbk'

#转为soup对象
from bs4 import BeautifulSoup

html=BeautifulSoup(res.text,'html.parser')

#找 parent
parent=html.find('ul',class_='clearfix')


#找到所有图片
lis = parent.find_all('li')
# 用循环处理.
from urllib import request
# 保存图片的语法: request.urlretrieve('图片地址','包含路径的图片的名称')
for each in lis:
    # 找到 图片的网址
    img_url = 'http://pic.netbian.com'+each.find('img').attrs['src']
    #print(img_url)
    # 图片的名称
    name = each.find('b').text
    #print(name) 
    request.urlretrieve(img_url,f'images/{name}.jpg')
    
print(parent)

我们在控制台运行一下这个程序:

C:\Users\KING\Desktop\新建文件夹\day3>python getimg.py

运行完成之后我们会在项目下看到image的一个目录(这个目录名称你是自己设置的)下载好的图片会存放在该目录下。

这就是批量下载 可能有做的不好的地方请留言,我会改正,谢谢

你可能感兴趣的:(笔记,python)