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中条件选择和循环语句使用方法介绍
Mar 13 Python
python里将list中元素依次向前移动一位
Sep 12 Python
python中对list去重的多种方法
Sep 18 Python
python根据日期返回星期几的方法
Jul 06 Python
Python通过正则表达式选取callback的方法
Jul 18 Python
Python生成随机数组的方法小结
Apr 15 Python
浅谈Python中重载isinstance继承关系的问题
May 04 Python
Python实现iOS自动化打包详解步骤
Oct 03 Python
flask框架单元测试原理与用法实例分析
Jul 23 Python
详解用python生成随机数的几种方法
Aug 04 Python
利用python3 的pygame模块实现塔防游戏
Dec 30 Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
Oct 18 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的ob_start来生成静态页面的方法分析
2011/03/09 PHP
PHP常见的6个错误提示及解决方法
2016/07/07 PHP
PHP类的自动加载与命名空间用法实例分析
2020/06/05 PHP
PHP高并发和大流量解决方案整理
2021/03/09 PHP
给moz-firefox下添加IE方法和属性
2007/04/10 Javascript
jQuery之网页换肤实现代码
2011/04/30 Javascript
jQuery EasyUI API 中文文档 可调整尺寸
2011/09/29 Javascript
javascript实现数字验证码的简单实例
2014/02/10 Javascript
js触发onchange事件的方法说明
2014/03/08 Javascript
JavaScript数字和字符串转换示例
2014/03/26 Javascript
js获取浏览器基本信息大全
2014/11/27 Javascript
JavaScript中几种排序算法的简单实现
2015/07/29 Javascript
jquery小火箭返回顶部代码分享
2015/08/19 Javascript
JavaScript实现的经典文件树菜单效果
2015/09/08 Javascript
修复jQuery tablesorter无法正确排序的bug(加千分位数字后)
2016/03/30 Javascript
js学习阶段总结(必看篇)
2016/06/16 Javascript
AngularJS国际化详解及示例代码
2016/08/18 Javascript
jQuery给指定的table动态添加删除行的操作方法
2016/10/12 Javascript
ionic+AngularJs实现获取验证码倒计时按钮
2017/04/22 Javascript
微信小程序之获取当前位置经纬度以及地图显示详解
2017/05/09 Javascript
vue 使用eventBus实现同级组件的通讯
2018/03/02 Javascript
微信小程序分享海报生成的实现方法
2018/12/10 Javascript
python实现的udp协议Server和Client代码实例
2014/06/04 Python
一个Python最简单的接口自动化框架
2018/01/02 Python
Python with用法:自动关闭文件进程
2019/07/10 Python
Python 时间戳之获取整点凌晨时间戳的操作方法
2020/01/28 Python
CPB肌肤之钥美国官网:Clé de Peau Beauté
2017/09/05 全球购物
简单而又朴实的个人求职信分享
2013/12/12 职场文书
工艺工程师岗位职责
2014/03/04 职场文书
学雷锋志愿服务月活动总结
2014/03/09 职场文书
《孔繁森》教学反思
2014/04/17 职场文书
企业家王石演讲稿:坚持与放下
2014/04/27 职场文书
党的群众路线教育实践活动教师自我剖析材料
2014/10/09 职场文书
2015年重阳节活动总结
2015/03/24 职场文书
优秀班干部主要事迹材料
2015/11/04 职场文书
Python scrapy爬取起点中文网小说榜单
2021/06/13 Python