1. 苏葳的备忘录首页
  2. 编程

Python中几种抓取网页中图片并保存的方法

python url imgPython访问互联网资源主要依靠三个库:urllib, urllib2, httplib。利用这些库的功能很容易能实现一些网络爬虫。配合html解析或正则表达式,就可以方便的提取或下载网络中的一些内容。如下载文件,提取邮件地址,提取链接,下载图片等。下面是常见的几种使用图片URL下载图片文件的小函数,有用文件操作的,也有直接获取并保存的,可以看出Python的语法是清晰简洁的。其中参数addr为图片url地址:

第一种:

def getImage(addr):
    u = urllib.urlopen(addr)
    data = u.read()
    splitPath = addr.split('/')
    fName = splitPath.pop()
    print fName
    f = open(fName, 'wb')
    f.write(data)
    f.close()

第二种:

def getImage2(addr):
	try:
		u = urllib2.urlopen(addr)
		data = u.read()
		splitPath = addr.split('/')
		fName = splitPath.pop()
		print fName
		urllib.urlretrieve(addr, fName)
	except Exception,e:
		print "[Error]Cant't download: %s:%s" %(fName,e)

使用urllib.urlretrieve(addr, fName) 直接用urllib.urlretrieve获取并保存,fName为保存的文件名,当然可加路径。

def getImage2(addr):
	try:
		splitPath = addr.split('/')
		fName = splitPath.pop()
		print fName
		open(fName, "wb").write(urllib2.urlopen(addr).read())
	except Exception,e:
		print "[Error]Cant't download: %s:%s" %(fName,e)

使用urllib2.urlopen,简写方式,其实与第一种一样。

”’python中用作注释,注意也要符合缩进规则。

原创文章,作者:苏葳,如需转载,请注明出处:https://www.swmemo.com/495.html

发表评论

您的电子邮箱地址不会被公开。