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


Posted in Python onMay 11, 2020

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

获取请求头的方法

这里使用的是Chrome浏览器。

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

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

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

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

此时在按Ctrl+R:

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

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

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

选择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 相关文章推荐
Python实现图像几何变换
Jul 06 Python
详解python时间模块中的datetime模块
Jan 13 Python
Python实现计算两个时间之间相差天数的方法
May 10 Python
python 简单的绘图工具turtle使用详解
Jun 21 Python
flask中过滤器的使用详解
Aug 01 Python
Pandas:Series和DataFrame删除指定轴上数据的方法
Nov 10 Python
Tensorflow模型实现预测或识别单张图片
Jul 19 Python
Django--权限Permissions的例子
Aug 28 Python
Win10下安装并使用tensorflow-gpu1.8.0+python3.6全过程分析(显卡MX250+CUDA9.0+cudnn)
Feb 17 Python
Pyqt5 关于流式布局和滚动条的综合使用示例代码
Mar 24 Python
在终端启动Python时报错的解决方案
Nov 20 Python
Python必备技巧之函数的使用详解
Apr 04 Python
python将unicode和str互相转化的实现
May 11 #Python
Python3之乱码\xe6\x97\xa0\xe6\xb3\x95处理方式
May 11 #Python
Python urllib.request对象案例解析
May 11 #Python
python将dict中的unicode打印成中文实例
May 11 #Python
ansible-playbook实现自动部署KVM及安装python3的详细教程
May 11 #Python
Python转换字典成为对象,可以用"."方式访问对象属性实例
May 11 #Python
Python3自定义json逐层解析器代码
May 11 #Python
You might like
PHP的FTP学习(一)[转自奥索]
2006/10/09 PHP
生成静态页面的PHP类
2006/11/25 PHP
PHP实现返回JSON和XML的类分享
2015/01/28 PHP
php while循环控制的简单实例
2016/05/30 PHP
走出JavaScript初学困境—js初学
2008/12/29 Javascript
JS字符串函数扩展代码
2011/09/13 Javascript
再谈querySelector和querySelectorAll的区别与联系
2012/04/20 Javascript
Dojo Javascript 编程规范 规范自己的JavaScript书写
2014/10/26 Javascript
js中this的用法实例分析
2015/01/10 Javascript
JS实现鼠标箭头变成一个燃烧烛光效果的方法
2015/02/28 Javascript
javascript实现文字无缝滚动
2016/12/27 Javascript
node 利用进程通信实现Cluster共享内存
2017/10/27 Javascript
JavaScript 高性能数组去重的方法
2018/09/20 Javascript
Vue数据双向绑定原理实例解析
2020/05/15 Javascript
vue-amap根据地址回显地图并mark的操作
2020/11/03 Javascript
python爬取NUS-WIDE数据库图片
2016/10/05 Python
Python 删除整个文本中的空格,并实现按行显示
2018/07/24 Python
Python设计模式之享元模式原理与用法实例分析
2019/01/11 Python
Python pygame绘制文字制作滚动文字过程解析
2019/12/12 Python
tensorflow 变长序列存储实例
2020/01/20 Python
python连接打印机实现打印文档、图片、pdf文件等功能
2020/02/07 Python
解决django无法访问本地static文件(js,css,img)网页里js,cs都加载不了
2020/04/07 Python
Python virtualenv虚拟环境实现过程解析
2020/04/18 Python
python爬虫基础之urllib的使用
2020/12/31 Python
关于HTML5的安全问题开发人员需要牢记的
2012/06/21 HTML / CSS
东南亚排名第一的服务市场:kaodim
2019/03/28 全球购物
Quiksilver美国官网:始于1969年的优质冲浪服和滑雪板外套
2020/04/20 全球购物
车间操作工岗位职责
2013/12/19 职场文书
销售员求职个人的自我评价
2014/02/19 职场文书
公司运动会策划方案
2014/05/25 职场文书
党员自我剖析材料(群众路线)
2014/10/06 职场文书
工作失误检讨书(经典集锦版)
2014/10/17 职场文书
2015年艾滋病宣传活动总结
2015/03/27 职场文书
2015年银行大堂经理工作总结
2015/04/24 职场文书
js中Object.create实例用法详解
2021/10/05 Javascript
Spring 使用注解开发
2022/05/20 Java/Android