python爬虫爬取图片的简单代码


Posted in Python onJanuary 18, 2021

Python是很好的爬虫工具不用再说了,它可以满足我们爬取网络内容的需求,那最简单的爬取网络上的图片,可以通过很简单的方法实现。只需导入正则表达式模块,并利用spider原理通过使用定义函数的方法可以轻松的实现爬取图片的需求。

1、spider原理

spider就是定义爬取的动作及分析网站的地方。
以初始的URL**初始化Request**,并设置回调函数。 当该request**下载完毕并返回时,将生成**response ,并作为参数传给该回调函数。

2、实现python爬虫爬取图片

第一步:导入正则表达式模块

import re # 导入正则表达式模块
import requests # python HTTP客户端 编写爬虫和测试服务器经常用到的模块
import random # 随机生成一个数,范围[0,1]

第二步:使用定义函数的方法爬取图片

def spiderPic(html, keyword):
  print('正在查找 ' + keyword + ' 对应的图片,下载中,请稍后......')
  for addr in re.findall('"objURL":"(.*?)"', html, re.S): # 查找URL
    print('正在爬取URL地址:' + str(addr)[0:30] + '...') 
    # 爬取的地址长度超过30时,用'...'代替后面的内容
    try:
      pics = requests.get(addr, timeout=100) # 请求URL时间(最大10秒)
    except requests.exceptions.ConnectionError:
      print('您当前请求的URL地址出现错误')
      continue
    fq = open('H:\\img\\' + (keyword + '_' + str(random.randrange(0, 1000, 4)) + '.jpg'), 'wb') 
     # 下载图片,并保存和命名
    fq.write(pics.content)
    fq.close()

到此这篇关于python爬虫爬取图片的简单代码的文章就介绍到这了,更多相关python爬虫怎么爬取图片内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python创建文件和追加文件内容实例
Oct 21 Python
Python操作MongoDB详解及实例
May 18 Python
Python基于matplotlib绘制栈式直方图的方法示例
Aug 09 Python
Python处理文本换行符实例代码
Feb 03 Python
符合语言习惯的 Python 优雅编程技巧【推荐】
Sep 25 Python
pandas去重复行并分类汇总的实现方法
Jan 29 Python
Python、 Pycharm、Django安装详细教程(图文)
Apr 12 Python
Python 调用 Outlook 发送邮件过程解析
Aug 08 Python
python 图像处理画一个正弦函数代码实例
Sep 10 Python
Python基础之函数原理与应用实例详解
Jan 03 Python
python词云库wordcloud的使用方法与实例详解
Feb 17 Python
Python Django项目和应用的创建详解
Nov 27 Python
python中用Scrapy实现定时爬虫的实例讲解
Jan 18 #Python
java关于string最常出现的面试题整理
Jan 18 #Python
python爬虫实现爬取同一个网站的多页数据的实例讲解
Jan 18 #Python
python中四舍五入的正确打开方式
Jan 18 #Python
PyQt5中QSpinBox计数器的实现
Jan 18 #Python
全网最细 Python 格式化输出用法讲解(推荐)
Jan 18 #Python
PyQt实现计数器的方法示例
Jan 18 #Python
You might like
PHP解码unicode编码的中文字符代码分享
2014/08/13 PHP
PHP has encountered a Stack overflow问题解决方法
2014/11/03 PHP
网站防止被刷票的一些思路与方法
2015/01/08 PHP
详解WordPress中的头像缓存和代理中的缓存更新方法
2016/03/01 PHP
PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数
2016/05/22 PHP
Yii2表单事件之Ajax提交实现方法
2017/05/04 PHP
vs2003 js文件编码问题的解决方法
2010/03/20 Javascript
JavaScript实现常用二级省市级联下拉列表的方法
2015/03/25 Javascript
黑帽seo劫持程序,js劫持搜索引擎代码
2015/09/15 Javascript
JavaScript数组的一些奇葩行为
2016/01/25 Javascript
基于jQuery实现仿搜狐辩论投票动画代码(附源码下载)
2016/02/18 Javascript
jQuery使用$.each遍历json数组的简单实现方法
2016/04/18 Javascript
有关jQuery中parent()和siblings()的小问题
2016/06/01 Javascript
Bootstrap 表单验证formValidation 实现远程验证功能
2017/05/17 Javascript
详解vue+vueRouter+webpack的简单实例
2017/06/17 Javascript
深入理解Vue-cli搭建项目后的目录结构探秘
2017/07/13 Javascript
jQuery控制input只能输入数字和两位小数的方法
2019/05/16 jQuery
jQuery实现文本显示一段时间后隐藏的方法分析
2019/06/20 jQuery
对python 数据处理中的LabelEncoder 和 OneHotEncoder详解
2018/07/11 Python
在Python中给Nan值更改为0的方法
2018/10/30 Python
python实现石头剪刀布程序
2021/01/20 Python
python opencv pytesseract 验证码识别的实现
2020/08/28 Python
python 30行代码实现蚂蚁森林自动偷能量
2021/02/08 Python
css3实现背景颜色渐变让图片不再是唯一的实现方式
2012/12/18 HTML / CSS
JPA的优势都有哪些
2013/07/04 面试题
信用社实习人员自我鉴定
2013/09/20 职场文书
美工的岗位职责
2013/11/14 职场文书
《在山的那边》教学反思
2014/02/23 职场文书
环保倡议书怎么写
2014/05/16 职场文书
2015暑期爱心支教策划书
2015/07/14 职场文书
预备党员入党感言
2015/08/01 职场文书
驾驶员管理制度范本
2015/08/06 职场文书
2016年小学“我们的节日·中秋节”活动总结
2016/04/05 职场文书
MySQL Shell的介绍以及安装
2021/04/24 MySQL
Python面向对象之内置函数相关知识总结
2021/06/24 Python