优草派  >   Python

Python如何抓取图片?Python简单图片抓取爬虫脚本分享

罗西汉            来源:优草派

爬虫脚本可以说是python语言应用最为广泛的一个地方了,而除了抓取文本数据之后,它还能够将网页中的图片给抓取下来。下面就是来给大家分享一个,简单的图片抓取python爬虫脚本,对其感兴趣像学习一下的小伙伴就往下看看吧。

Python如何抓取图片?Python简单图片抓取爬虫脚本分享

1.那么首先需要做的就是新建python文件作为脚本,然后打开浏览器将自己所需要抓取图片的网站链接复制下来。之后在脚本文件中导入urllib以及re两个标准库,再将这个网页链接保存在变量之中,代码如下:

import urllib
import re
path = ‘http://tieba.baidu.com/p/2460150866’

2.然后定义一个函数,这个函数只需要接收url链接一个参数即可。在此函数中向这个网页发送请求将其给抓取下来,然后再调用read()方法将里面的所有内容读取出来后返回,代码如下:

def getHtml(url):
    page = urllib.urlopen(url)
    html = page.read()
    return html

3.那么此时返回的就只是网页源数据,还需要经过进一步处理才可以获取其中图片。在浏览器中按F12并且将鼠标移动到图片上,查看它标签内表示图片的属性是什么,再根据这个属性来编写正则字符串生成正则规则。

然后调用findall()方法就可以根据该规则把网页源代码中匹配的数据全取出来,而这里取到的实际上时图片链接。所以用for循环迭代这些链接组成的对象,每次迭代中都调用urlretrieve()方法远程将图片数据下载到本地并且重命名以更符合规范。最后去调用这个函数即可,详细代码如下:

def getImg(html):
    reg = r'src="(.+?\.jpg)" pic_ext'
    imgre = re.compile(reg)
    imglist = re.findall(imgre,html)
    x = 0
    for imgurl in imglist:
        urllib.urlretrieve(imgurl,'%s.jpg' % x)
        x+=1
html = getHtml(path)
print(getImg(html))

以上就是关于“Python如何抓取图片?Python简单图片抓取爬虫脚本分享”的全部内容了,希望对你有所帮助。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。