python爬虫爬取图片的简单代码
作者:宋宋大人 发布时间:2021-08-04 10:19:27
标签:python爬虫,爬取图片
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()
来源:https://www.py.cn/spider/example/23017.html


猜你喜欢
- 场景描述:在页面中存在顶部导航和左侧导航,左侧导航和右侧内容区使用了命名视图实现,点击左侧导航的链接时,右侧内容区相应显示不同组件内容。问题
- 环境 centos7 python3pytesseract只是tesseract-ocr的一种实现接口。所以要先安装tesseract-oc
- 花了两周时间,利用工作间隙时间,开发了一个基于Django的项目任务管理Web应用。项目计划的实时动态,可以方便地被项目成员查看(^_^又重
- 题目大意问 太阳神有一牛群,由白、黑、花、棕四种颜色的公、母牛组成,其间关系如下,求每种牛的个数。公牛中,白牛多于棕牛,二者之差为
- 一,封装封装是面向对象编程思想的重要特征之一。(一)什么是封装封装是一个抽象对象的过程,它容纳了对象的属性和行为实现细节,并以此对外提供公共
- 编写ATM程序实现下述功能,数据来源于文件db.txt1、充值功能:用户输入充值钱数,db.txt中该账号钱数完成修改2、转账功能:用户A向
- 写在前面这篇文章主要让大家明白多线程爬虫,因为go语言实现并发是很容易的。这次的服务端,是我们之前搭建的电子商城平台,所以我们不担心ip被封
- asp自定义错误显示方法:<html><head><meta http-equiv="Co
- 您可能听说过,带有 yield 的函数在 Python 中被称之为 generator(生成器),何谓 generator ?我们先抛开 g
- 目录前言二叉树节点定义递归构建二叉树前言本文的内容是数据结构中二叉树部分最基础的,之所以写一下主要是为了方便刷题的时候,能够在自己电脑上很快
- 本文实例为大家分享了微信小程序实现星星评价效果的具体代码,供大家参考,具体内容如下代码实现wxml文件<!--pages/evalua
- 字符串的IndexOf()方法搜索在该字符串上是否出现了作为参数传递的字符串,如果找到字符串,则返回字符的起始位置 (0表示第一个字符,1表
- 首先第一步,打开文件,有两个函数可供选择:open() 和 file()①. f = open('file.txt
- 本文实例讲述了PHP实现网页内容html标签补全和过滤的方法。分享给大家供大家参考,具体如下:如果你的网页内容的html标签显示不全,有些表
- 只要把下面代码放到index.asp或者default.asp中,只要在首页代码顶部引用call Check_Wap(),这个也是我的工程中
- 本文为大家分享了TensorFLow用Saver保存和恢复变量的具体代码,供大家参考,具体内容如下建立文件tensor_save.py, 保
- 单例模式单例模式是一种常用的模式,有一些对象我们往往只需要一个,比如线程池、全局缓存、浏览器中的 window 对象等。在 JavaScri
- 前言PyTorch是一个开源的深度学习框架,基础教学从开始安装学起,一步一个脚印。提示:以下是本篇文章正文内容,下面案例可供参考一、Pyor
- 相信只要学习python的同学对于虚拟环境这个概念肯定不会太陌生,虚拟环境指的是一个个单独隔离的python开发环境。各个虚拟环境之间互不干
- 程式功能: 用 UI 界面,点击界面上的“开始识别”来录音(调用百度云语音接口),并自动将结果显示在