基于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线程中对join方法的运用的教程
Apr 09 Python
python实现基于SVM手写数字识别功能
May 27 Python
Windows下Anaconda的安装和简单使用方法
Jan 04 Python
python的schedule定时任务模块二次封装方法
Feb 19 Python
python抖音表白程序源代码
Apr 07 Python
使用python切片实现二维数组复制示例
Nov 26 Python
django多种支付、并发订单处理实例代码
Dec 13 Python
python基于celery实现异步任务周期任务定时任务
Dec 30 Python
pytorch程序异常后删除占用的显存操作
Jan 13 Python
Python实现新型冠状病毒传播模型及预测代码实例
Feb 05 Python
Python数据可视化实现多种图例代码详解
Jul 14 Python
Python 中的 copy()和deepcopy()
Nov 07 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 array_push 数组函数
2009/12/26 PHP
php遍历替换目录下文件指定内容的方法
2016/11/10 PHP
aspx中利用js实现确认删除代码
2010/07/22 Javascript
JSuggest自动匹配下拉框使用方法(示例代码)
2013/12/27 Javascript
JS对象转换为Jquery对象实现代码
2013/12/29 Javascript
用js替换除数字与逗号以外的所有字符的代码
2014/06/07 Javascript
jquery实现导航固定顶部的效果仿蘑菇街
2014/10/22 Javascript
jQuery中get()方法用法实例
2014/12/27 Javascript
javascript中AJAX用法实例分析
2015/01/30 Javascript
js闭包实现按秒计数
2015/04/23 Javascript
jQuery实现伸展与合拢panel的方法
2015/04/30 Javascript
jQuery删除节点用法示例(remove方法)
2016/09/08 Javascript
详解用webpack把我们的业务模块分开打包的方法
2017/07/20 Javascript
判断iOS、Android以及PC端的示例代码
2018/11/15 Javascript
用element的upload组件实现多图片上传和压缩的示例代码
2019/02/12 Javascript
vue 使用axios 数据请求第三方插件的使用教程详解
2019/07/05 Javascript
vue实现图片按比例缩放问题操作
2020/08/11 Javascript
javascript实现时钟动画
2020/12/03 Javascript
Python使用pymysql小技巧
2017/06/04 Python
Python2.7+pytesser实现简单验证码的识别方法
2017/12/29 Python
Django中使用Celery的教程详解
2018/08/24 Python
在python中做正态性检验示例
2019/12/09 Python
基于Python pyecharts实现多种图例代码解析
2020/08/10 Python
花园仓库建筑:Garden Buildings Direct
2018/02/16 全球购物
Bose加拿大官方网站:美国知名音响品牌
2019/03/21 全球购物
智能电子应届生求职信
2013/11/10 职场文书
毕业生找工作推荐信
2013/11/21 职场文书
领导干部廉政承诺书
2014/03/27 职场文书
疾病防治方案
2014/05/31 职场文书
留守儿童工作方案
2014/06/02 职场文书
大学生工作求职信
2014/06/23 职场文书
个人租房协议书样本
2014/10/01 职场文书
南京大屠杀观后感
2015/06/02 职场文书
北京爱情故事观后感
2015/06/12 职场文书
2015年高校保卫处工作总结
2015/07/23 职场文书
2016年学校“3.12”植树节活动总结
2016/03/16 职场文书