吴裕雄--天生自然python学习笔记:编写网络爬虫代码获取指定网站的图片
- 我们经常会在网上搜索井下载图片,然而一张一张地下载就太麻烦了,本案例
- 就是通过网络爬虫技术, 一次性下载该网站所有的图片并保存 。
- 网站图片下载并保存
- 将指定网站的 .jpg 和 .png 格式的图片全部下载井保存在自己本地新建的 images 文件夹中 。
- import requests,os
- from bs4 import BeautifulSoup
- from urllib.request import urlopen
- url = 'http://www.tooopen.com/img/87.aspx'
- html = requests.get(url)
- html.encoding="utf-8"
- sp = BeautifulSoup(html.text, 'html.parser')
- # 建立images目录保存图片
- images_dir="E:\\images\\"
- if not os.path.exists(images_dir):
- os.mkdir(images_dir)
- # 取得所有 <a> 和 <img> 标签
- all_links=sp.find_all(['a','img'])
- for link in all_links:
- # 读取 src 和 href 属性内容
- src=link.get('src')
- href = link.get('href')
- attrs=[src,src]
- for attr in attrs:
- # 读取 .jpg 和 .png 檔
- if(attr != None)and(('.jpg' in attr)or('.png' in attr)):
- # 设置图片文件完整路径
- full_path = attr
- filename = full_path.split('/')[-1] # 取得图片名
- ext = filename.split('.')[-1] #取得扩展名
- filename = filename.split('.')[-2] #取得主文件名
- if('jpg' in ext):
- filename = filename + '.jpg'
- else:
- filename = filename + '.png'
- print(attr)
- # 保存图片
- try:
- image = urlopen(full_path)
- f = open(os.path.join(images_dir,filename),'wb')
- f.write(image.read())
- f.close()
- except:
- print("{} 无法读取!".format(filename))
- print("当前页图片下载完了")
- /static/image/logo.png
- logo.png 无法读取!
- /static/image/logo.png
- logo.png 无法读取!
- https://www.tooopen.com/static/ad/1500X50-viw.png
- https://www.tooopen.com/static/ad/1500X50-viw.png
- https://www.tooopen.com/static/ad/1500X50-too.png
- https://www.tooopen.com/static/ad/1500X50-too.png
- http://img08.tooopen.com/20190807/tooopen_wk_131356135671827.jpg
- tooopen_wk_131356135671827.jpg 无法读取!
- http://img08.tooopen.com/20190807/tooopen_wk_131356135671827.jpg
- tooopen_wk_131356135671827.jpg 无法读取!
- http://img08.tooopen.com/20190807/tooopen_wk_131356135689691.jpg
- tooopen_wk_131356135689691.jpg 无法读取!
- http://img08.tooopen.com/20190807/tooopen_wk_131356135689691.jpg
- tooopen_wk_131356135689691.jpg 无法读取!
- http://img08.tooopen.com/20190807/tooopen_wk_131355135547978.jpg
- tooopen_wk_131355135547978.jpg 无法读取!
- http://img08.tooopen.com/20190807/tooopen_wk_131355135547978.jpg
- tooopen_wk_131355135547978.jpg 无法读取!
- http://img08.tooopen.com/20191204/tooopen_sl_135027502737700.jpg
- tooopen_sl_135027502737700.jpg 无法读取!
- http://img08.tooopen.com/20191204/tooopen_sl_135027502737700.jpg
- tooopen_sl_135027502737700.jpg 无法读取!
- http://img08.tooopen.com/20191122/tooopen_sl_102334233455130.jpg
- tooopen_sl_102334233455130.jpg 无法读取!
- http://img08.tooopen.com/20191122/tooopen_sl_102334233455130.jpg
- tooopen_sl_102334233455130.jpg 无法读取!
- http://img08.tooopen.com/20191121/tooopen_sl_095522552259405.jpg
- tooopen_sl_095522552259405.jpg 无法读取!
- http://img08.tooopen.com/20191121/tooopen_sl_095522552259405.jpg
- tooopen_sl_095522552259405.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093830383053575.jpg
- tooopen_sl_093830383053575.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093830383053575.jpg
- tooopen_sl_093830383053575.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093534353474034.jpg
- tooopen_sl_093534353474034.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093534353474034.jpg
- tooopen_sl_093534353474034.jpg 无法读取!
- http://img08.tooopen.com/20191205/tooopen_sl_134926492663201.jpg
- tooopen_sl_134926492663201.jpg 无法读取!
- http://img08.tooopen.com/20191205/tooopen_sl_134926492663201.jpg
- tooopen_sl_134926492663201.jpg 无法读取!
- http://img08.tooopen.com/20191122/tooopen_sl_102328232897349.jpg
- tooopen_sl_102328232897349.jpg 无法读取!
- http://img08.tooopen.com/20191122/tooopen_sl_102328232897349.jpg
- tooopen_sl_102328232897349.jpg 无法读取!
- http://img08.tooopen.com/20191121/tooopen_sl_162428242838278.jpg
- tooopen_sl_162428242838278.jpg 无法读取!
- http://img08.tooopen.com/20191121/tooopen_sl_162428242838278.jpg
- tooopen_sl_162428242838278.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093827382762634.jpg
- tooopen_sl_093827382762634.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093827382762634.jpg
- tooopen_sl_093827382762634.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093529352941470.jpg
- tooopen_sl_093529352941470.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093529352941470.jpg
- tooopen_sl_093529352941470.jpg 无法读取!
- http://img08.tooopen.com/20191006/tooopen_sl_09550855847444.jpg
- tooopen_sl_09550855847444.jpg 无法读取!
- http://img08.tooopen.com/20191006/tooopen_sl_09550855847444.jpg
- tooopen_sl_09550855847444.jpg 无法读取!
- http://img08.tooopen.com/20191119/tooopen_sl_115948594813304.jpg
- tooopen_sl_115948594813304.jpg 无法读取!
- http://img08.tooopen.com/20191119/tooopen_sl_115948594813304.jpg
- tooopen_sl_115948594813304.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_16270727715545.jpg
- tooopen_sl_16270727715545.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_16270727715545.jpg
- tooopen_sl_16270727715545.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093822382227436.jpg
- tooopen_sl_093822382227436.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093822382227436.jpg
- tooopen_sl_093822382227436.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_092538253863445.jpg
- tooopen_sl_092538253863445.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_092538253863445.jpg
- tooopen_sl_092538253863445.jpg 无法读取!
- http://img08.tooopen.com/20190924/tooopen_sl_095323532347706.jpg
- tooopen_sl_095323532347706.jpg 无法读取!
- http://img08.tooopen.com/20190924/tooopen_sl_095323532347706.jpg
- tooopen_sl_095323532347706.jpg 无法读取!
- http://img08.tooopen.com/20191121/tooopen_sl_101744174437980.jpg
- tooopen_sl_101744174437980.jpg 无法读取!
- http://img08.tooopen.com/20191121/tooopen_sl_101744174437980.jpg
- tooopen_sl_101744174437980.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_094151415155508.jpg
- tooopen_sl_094151415155508.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_094151415155508.jpg
- tooopen_sl_094151415155508.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093819381985689.jpg
- tooopen_sl_093819381985689.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_093819381985689.jpg
- tooopen_sl_093819381985689.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_092534253435074.jpg
- tooopen_sl_092534253435074.jpg 无法读取!
- http://img08.tooopen.com/20191115/tooopen_sl_092534253435074.jpg
- tooopen_sl_092534253435074.jpg 无法读取!
- https://www.tooopen.com/static/image/tooopen-2w.png
- https://www.tooopen.com/static/image/tooopen-2w.png
- 当前页图片下载完了
吴裕雄--天生自然python学习笔记:编写网络爬虫代码获取指定网站的图片的更多相关文章
- 吴裕雄--天生自然python学习笔记:python爬虫PM2.5 实时监测显示器
PM2.5 对人体的健康影响很大,所以空气中的 PM2.5 实时信息受到越来越多的关注. Python 的 Pandas 套件不但可以自动读取网页中的表格 数据 , 还可对数据进行修改.排序等处理,也 ...
- 吴裕雄--天生自然PYTHON学习笔记:python自动登录网站
打开 www. 5 l eta . com 网站,如果己经通过某用户名进行了登录,那么先退出登录 . 登录该网站 的步骤一般如下 : ( 1 )单击右上角的“登录”按钮. ( 2 )先输入账号. ( ...
- 吴裕雄--天生自然python学习笔记:Python MongoDB
MongoDB 是目前最流行的 NoSQL 数据库之一,使用的数据类型 BSON(类似 JSON). PyMongo Python 要连接 MongoDB 需要 MongoDB 驱动,这里我们使用 P ...
- 吴裕雄--天生自然python学习笔记:Python3 OS 文件/目录方法
os 模块提供了非常丰富的方法用来处理文件和目录.常用的方法如下表所示: 序号 方法及描述 1 os.access(path, mode) 检验权限模式 2 os.chdir(path) 改变当前工作 ...
- 吴裕雄--天生自然python学习笔记:python 用pyInstaller模块打包文件
要想在没有安装 Python 集成环境的电脑上运行开发的 Python 程序,必须把 Python 文件打包成 .exe 格式的可执行 文件. Python 的打包工作 PyInstaller 提供了 ...
- 吴裕雄--天生自然python学习笔记:python 文件批量查找
在多个文本文件中查找 我们首先来学习文本文件的查找字符 . 我们通过 os.walk 扩大查找范围, 查找指定目录和子目录下的文件. 应用程序总览 读取 当 前目录及子目录下的所有 PY 和 txt ...
- 吴裕雄--天生自然python学习笔记:python 用 Tesseract 识别验证码
用 Selenium 包实现网页自动化操作的案例中,发现很多网页都因 需输入图形验证码而导致实验无法进行 . 解决的办法就是对验证码进行识别 . 识 别的方法之 一 是通过图形处理包将验证码的大部分背 ...
- 吴裕雄--天生自然python学习笔记:pandas模块强大的数据处理套件
用 Python 进行数据分析处理,其中最炫酷的就属 Pa ndas 套件了 . 比如,如果我 们通过 Requests 及 Beautifulsoup 来抓取网页中的表格数据 , 需要进行较复 杂的 ...
- 吴裕雄--天生自然python学习笔记:Beautiful Soup 4.2.0模块
Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时 ...
随机推荐
- HDU 2444 The Accomodation of Students【二分图最大匹配问题】
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=2444 题意:首先判断所有的人可不可以分成互不认识的两部分.如果可以分成 ,则求两部分最多相互认识的对数. ...
- .net core编译时设置不自动生成“netcoreapp3.0”目录
不知道出于什么目的,.netcore项目默认编译时生成的文件要多加一层"netcoreapp3.0"或"netcoreapp2.1",这应该不符合大多数开发者的 ...
- 为什么Web前端变的越来越复杂,变得更加难学了
前端发展了也有些年头了,曾记得很多年前,聊起前端,都觉得是很简单,那个时候都没有前端工程师这个职位.可现在,前端已经逆袭了,已经不是原来的样子了,各种技术层出不穷,显的越来越高深莫测了.前端真的变得那 ...
- Unity中的事件监听
Unity3D的uGUI系统的将UI可能触发的事件分为12个类型,即EventTriggerType枚举的12个值.如下图所示: 先以PointerClick为例.这个是用于某点点击事件.其他事件都可 ...
- c指针(2)
#include<stdio.h> #include<malloc.h> #include<stdlib.h> typedef struct LNode { cha ...
- BBS注册功能
BBS注册功能 一.后端 1.组件校验数据 """ @author RansySun @create 2019-11-03-11:35 """ ...
- springboot访问请求404问题
新手在刚接触springboot的时候,可能会出现访问请求404的情况,代码没问题,但就是404. 疑问:在十分确定代码没问题的时候,可以看下自己的包是不是出问题了? 原因:SpringBoot 注解 ...
- Linux分区挂载
Liunx采用树形的文件管理系统,也就是在Linux系统中,可以说已经没有分区的概念了.分区在Linux和其他设备一样都只是一个文件.要使用一个分区必须把它加载到文件系统中.这可能难于理解,继续往下看 ...
- CodeForces 263E Rhombus
洛谷题目页面传送门 & CodeForces题目页面传送门 给定一个$n$行$m$列的矩阵,第$i$行$j$列为$a_{i,j}$,以及一个常数$s\in\left[1,\left\lceil ...
- 2017年3月16工作日志【mysql更改字段参数、java8 map()调用方法示例】
修改某个表的字段类型及指定为空或非空 >alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空],变更字段名称及属性 >alter table 表名称 ...