每天一个小Demo-Python爬虫图片简单抓取

    本人主要是做Android开发,业余时间学习Python语言,喜欢以项目开发作为学习过程,所以把自己所学习的和自己理解的知识分享出来,希望能给同样学习Python语言的朋友一些帮助,有错误的地方也请及时提出,我会做出修改。

    今天给大家分享的是一个简单的图片爬去Demo,涉及到一些简单的知识,如果有不明白的地方可以给我留言,或者自行百度,Python版本3.6。

import urllib.request

import urllib.error

#正则表达式库

import re

#定义爬取单个页面函数

def carw(url, page):

# 打开网页并读取

html_info = urllib.request.urlopen(url).read()

# 转换成字符串

html_info = str(html_info)

# 含有图片信息筛选的正则表达式

pat_one = '.+?'

# 进行匹配过滤,得到信息列表

result = re.compile(pat_one).findall(html_info)

#取出信息字符串,只有一个元素

result = result[0]

#含有图片地址筛选的正则,

pat_two = '

#得到图片地址列表

image_list = re.compile(pat_two).findall(result)

# 循环下载存储

x = 1

for image_url in image_list:

# 设置文件名称和格式

image_name = "E:/image/" + str(page) + str(x) + ".jpg"

try:

# 存储文件

urllib.request.urlretrieve(image_url, image_name)

# 处理异常

except urllib.error.URLError as e:

if hasattr(e, "code"):

x += 1

if hasattr(e, "reason"):

x += 1

x += 1

# 主循环程序

for i in range(1, 5):

url = "http://m.ivsky.com/tupian/ziranfengguang/index_" + str(i) + ".html"

carw(url, i)

代码很简单,就是一些基本库的应用,可以多练习几个网站图片的抓取,有利用我们理解爬虫的基本原理,谢谢大家!

你可能感兴趣的:(每天一个小Demo-Python爬虫图片简单抓取)