Python爬虫之下载网页图片

简介: 传统的方式是在想要的图片上鼠标点击右键另存为,或者用截图的方式保存图片,其实我们还可以通过使用简单的Python语言实现图片的下载并保存到本地,下面让我们看看如何实现吧一、确定图片的URL地址及获取URL网页页面的信息#coding:utf-8fromurllib.

传统的方式是在想要的图片上鼠标点击右键另存为,或者用截图的方式保存图片,其实我们还可以通过使用简单的Python语言实现图片的下载并保存到本地,下面让我们看看如何实现吧

一、确定图片的URL地址及获取URL网页页面的信息

#coding:utf-8

fromurllib.requestimporturlopen    #导入urlopen

defgetHtml(url):

    page = urlopen(url)   

    html = page.read()    #读取URL

    returnhtml

html = getHtml("http://g.hiphotos.baidu.com/image/pic/item/8694a4c27d1ed21bd85def25a46eddc450da3f5e.jpg")    #访问URL地址

print(html)

二、通过正则表达筛选想要的页面数据

www.cnblogs.com/fnng/archive/2013/05/20/3089816.html

www.jianshu.com/p/6bc77094374a

通过审查页面元素,可以找到图片的地址,如下:src=”https://imgsa.baidu.com/forum/pic/item/f6738bd4b31c8701b540a1bf257f9e2f0608fff1.jpg”


img_24b8593f8334b907d685330fdcf96b79.png
摘自百度图片

修改后代码如下:

#coding:utf-8

fromurllib.requestimporturlopen

importre

defgetHtml(url):

    page = urlopen(url)

    html = page.read()

    returnhtml

defgetImg():

    reg =r'src="(.+?\.jpg)" pic_ext'    #通过正则表达获取图片数据

    img = re.compile(reg)     

    img_list = re.findall(img,html)

    returnimg_list

html = getHtml("http://g.hiphotos.baidu.com/image/pic/item/8694a4c27d1ed21bd85def25a46eddc450da3f5e.jpg")

print(html)

三、将获取的数据保存到本地

通过for循环遍历并下载到本地,代码如下:

#coding:utf-8

fromurllib.requestimporturlopen

importre

importurllib

defgetHtml(url):

    page = urlopen(url)

    html = page.read()

    returnhtml

defgetImg():

    reg =r'src="(.+?\.jpg)" pic_ext'

    img = re.compile(reg)

    img_list = re.findall(img,html)

    x =0

    forimgurlinimg_list:

        urllib.urlretrieve(imgurl,'%s.jpg'% x)   #urllib.urlretrieve()方法,下载并保留到本地

        x +=1

html = getHtml("http://g.hiphotos.baidu.com/image/pic/item/8694a4c27d1ed21bd85def25a46eddc450da3f5e.jpg")

print(html)

目录
相关文章
|
2月前
|
Python
Python实用记录(六):如何打开txt文档并删除指定绝对路径下图片
这篇文章介绍了如何使用Python打开txt文档,删除文档中指定路径的图片,并提供了一段示例代码来展示这一过程。
37 1
|
19天前
|
数据采集 Java Scala
淘宝图片爬虫:Scala与Curl的高效集成
淘宝图片爬虫:Scala与Curl的高效集成
|
1月前
|
JavaScript 前端开发 开发者
探索 DrissionPage: 强大的Python网页自动化工具
DrissionPage 是一个基于 Python 的网页自动化工具,结合了浏览器自动化的便利性和 requests 库的高效率。它提供三种页面对象:ChromiumPage、WebPage 和 SessionPage,分别适用于不同的使用场景,帮助开发者高效完成网页自动化任务。
151 4
|
1月前
|
数据采集 前端开发 JavaScript
除了网页标题,还能用爬虫抓取哪些信息?
爬虫技术可以抓取网页上的各种信息,包括文本、图片、视频、链接、结构化数据、用户信息、价格和库存、导航菜单、CSS和JavaScript、元数据、社交媒体信息、地图和位置信息、广告信息、日历和事件信息、评论和评分、API数据等。通过Python和BeautifulSoup等工具,可以轻松实现数据抓取。但在使用爬虫时,需遵守相关法律法规,尊重网站的版权和隐私政策,合理控制请求频率,确保数据的合法性和有效性。
|
1月前
|
数据采集 Web App开发 iOS开发
如何使用 Python 语言的正则表达式进行网页数据的爬取?
使用 Python 进行网页数据爬取的步骤包括:1. 安装必要库(requests、re、bs4);2. 发送 HTTP 请求获取网页内容;3. 使用正则表达式提取数据;4. 数据清洗和处理;5. 循环遍历多个页面。通过这些步骤,可以高效地从网页中提取所需信息。
|
2月前
|
Python
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
使用Python的socket库实现客户端到服务器端的图片传输,包括客户端和服务器端的代码实现,以及传输结果的展示。
177 3
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
|
2月前
|
云计算 Python
用python给你写个简单的计算器功能网页啊
这张图片展示了阿里巴巴集团的组织架构图,涵盖了核心电商、云计算、数字媒体与娱乐、创新业务等主要板块,以及各板块下的具体业务单元和部门。
|
2月前
|
数据采集 Java Python
如何用Python同时抓取多个网页:深入ThreadPoolExecutor
在信息化时代,实时数据的获取对体育赛事爱好者、数据分析师和投注行业至关重要。本文介绍了如何使用Python的`ThreadPoolExecutor`结合代理IP和请求头设置,高效稳定地抓取五大足球联赛的实时比赛信息。通过多线程并发处理,解决了抓取效率低、请求限制等问题,提供了详细的代码示例和解析方法。
如何用Python同时抓取多个网页:深入ThreadPoolExecutor
|
2月前
|
Python
Python实用记录(四):os模块-去后缀或者改后缀/指定目录下图片或者子目录图片写入txt/csv
本文介绍了如何使用Python的os模块来操作文件,包括更改文件后缀、分割文件路径和后缀、将指定目录下的所有图片写入txt文档,以及将指定目录下所有子目录中的图片写入csv文档,并为每个子目录分配一个标签。
31 1
|
2月前
|
前端开发 Python
帮我用python作为网页前端输出“hallow world
帮我用python作为网页前端输出“hallow world