基于python实现获取网页图片过程解析

 更新时间:2020年05月11日 10:18:57   作者:哈哈哈天蝎  
这篇文章主要介绍了基于python实现获取网页图片过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

环境:python3, 要安装bs4这个第三方库

获取请求头的方法

这里使用的是Chrome浏览器。

打开你想查询的网站,按F12,或者鼠标右键一下选择检查。会弹出如下的审查元素页面:

然后点击上方选项中的Network选项:

此时在按Ctrl+R:

选择下方框中的第一个,单击:

选择Headers选项,其中就会有Request Headers,包括你需要的信息。

介绍:这个程序是用来批量获取网页的图片,用于新手入门

注意:由于是入门的程序在获取某些网页的图片时会出问题!!!!!

import os
import urllib.request
from bs4 import BeautifulSoup
# 网址
url = "http://www2017.tyut.edu.cn/"
# 建立请求对象
request = urllib.request.Request(url)
# 加入请求头(一定要换成自己的!!!!)
request.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36')
# 获取请求
code = urllib.request.urlopen(request)
# 得到html代码
html = code.read().decode('utf-8')
# 将html的标签转成对象(方便后面的操作)
bs = BeautifulSoup(html, 'html.parser')
# 提取所有的img标签
imagesUrl = bs.find_all('img')
sources = []
# 建立存放的路径(路径一定要存在!!!!!!)
filepath = os.getcwd() + '\\images\\'
def createFile(path: str, fpath):
  urllib.request.urlretrieve(path, fpath)
# 获取图片的路径(网址+img标签的src属性的值)
for img in imagesUrl:
  sources.append(url + str(img.get('src')))
for src in sources:
  # 用split是防止请求带参
  baseName = os.path.basename(src).split('?')
  # 图片名
  fileName = filepath + baseName[0]
  print("url=" + src, "filename=" + fileName)
  createFile(src, fileName)
print('这次您一共下载了图片' + str(len(sources)) + '张')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Python基于Django实现验证码登录功能

    Python基于Django实现验证码登录功能

    验证码登录是一种常见的身份验证方式,它可以有效防止恶意攻击和机器人登录,本文将介绍如何基于Python Django实现验证码登录功能,需要的可以参考一下
    2023-05-05
  • python爬虫之urllib,伪装,超时设置,异常处理的方法

    python爬虫之urllib,伪装,超时设置,异常处理的方法

    今天小编就为大家分享一篇python爬虫之urllib,伪装,超时设置,异常处理的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • python中对信号的处理详解

    python中对信号的处理详解

    这篇文章主要给大家介绍了关于python中对信号处理的相关资料, 计算机借助信号来接收和发送各种命令,操作系统针对其编程要接收或生成的每种命令列出了至少一个信号,需要的朋友可以参考下
    2021-07-07
  • pytorch使用-tensor的基本操作解读

    pytorch使用-tensor的基本操作解读

    这篇文章主要介绍了pytorch使用-tensor的基本操作解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • Python中lambda的用法及其与def的区别解析

    Python中lambda的用法及其与def的区别解析

    这篇文章主要介绍了Python中lambda的用法及其与def的区别解析,需要的朋友可以参考下
    2014-07-07
  • python-opencv 将连续图片写成视频格式的方法

    python-opencv 将连续图片写成视频格式的方法

    今天小编就为大家分享一篇python-opencv 将连续图片写成视频格式的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • OpenCV半小时掌握基本操作之高斯双边

    OpenCV半小时掌握基本操作之高斯双边

    这篇文章主要介绍了OpenCV基本操作之高斯双边,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • Python Sphinx使用实例及问题解决

    Python Sphinx使用实例及问题解决

    这篇文章主要介绍了Python Sphinx使用实例及问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • PyCharm 2020.2下配置Anaconda环境的方法步骤

    PyCharm 2020.2下配置Anaconda环境的方法步骤

    这篇文章主要介绍了PyCharm 2020.2下配置Anaconda环境的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • python实现TCP文件传输

    python实现TCP文件传输

    这篇文章主要为大家详细介绍了python实现TCP文件传输,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-03-03

最新评论