Python爬取网页的图片数据

版权声明:本文为博主原创文章,版权归原作者小思所有,转载或者引用本文内容请注明来源及原作者 https://blog.csdn.net/zeal9s/article/details/83900542

本案例是基于PyCharm开发的,也可以使用idea。

在项目内新建一个python文件TestCrawlers.py
TestCrawlers.py

# 导入urllib下的request模块
import urllib.request
# 导入正则匹配包
import re

# -*- encoding:utf-8 -*-
"""
@作者:小思
@文件名:TestCrawlers.py
@时间:2018/11/6  15:48
@文档说明:测试爬虫(以爬取http://www.xiaohuar.com/2014.html上的图片为例)
"""

# 步骤
# 1.确定要爬取数据的网址
# 2.获取该网址的源码
# 3.使用正则表达式去匹配网址的源码(匹配所需要的数据类型)
# 4.将爬取的数据保存至本地或者数据库

# 确定要爬取数据的网址
url = "http://www.xiaohuar.com/2014.html"
# 该网址的源码(以该网页的原编码方式进行编码,特殊字符编译不能编码就设置ignore)
webSourceCode = urllib.request.urlopen(url).read().decode("gb2312", 'ignore')
# 匹配图片的正则表达式
imgRe = re.compile(r'src="(.+?\.jpg)"')
imageUrl = imgRe.findall(webSourceCode)
# 将图片下载到本地(需要网络)
# 本地路径
localPath = "F:\myImages"
count = 0
for i in imageUrl:
    if ("http:") not in i:
        i = "http://www.xiaohuar.com" + i
        urllib.request.urlretrieve(i, f"{localPath}\\{count}.jpg")
        print(i, "该图片下载成功!")
        count += 1

print("图片已经全部下载完成,请前往", localPath, "查看!")

控制台输出:
在这里插入图片描述
文件夹myImages的图片:
在这里插入图片描述
图片爬取成功!

注意事项:
该爬取方式可以根据自己的需求更换,你需要爬取哪个网站就查看它的源代码,爬取的时候要分析源代码的规律,然后匹配正则,保存下载到你自己的电脑里,就不用每一个都手动下载保存了,有分页的网页可以把那些网址放在一个元祖中,然后遍历读取元祖里面的源代码再匹配正则,获取到要下载的数据。

说在最后的话:编写实属不易,若喜欢或者对你有帮助记得点赞+关注或者收藏哦~

猜你喜欢

转载自blog.csdn.net/zeal9s/article/details/83900542