重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
创新互联www.cdcxhl.cn八线动态BGP香港云服务器提供商,新人活动买多久送多久,划算不套路!
成都创新互联公司服务项目包括南江网站建设、南江网站制作、南江网页制作以及南江网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,南江网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到南江省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!小编给大家分享一下用python爬取图片的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!
都知道Python的语法很简单易上手,也很适合拿来做爬虫等等,这里就简单讲解一下爬虫入门——简单地爬取下载网站图片。
代码:
其实很简单,我们直接看下整体的代码:
#coding = utf-8 import urllib import re def getHtml(url): page = urllib.urlopen(url) html = page.read() return html def getImg(html): reg = 'src="(.+?\.jpg)" alt=' imgre = re.compile(reg) imglist = re.findall(imgre, html) x = 0 for imgurl in imglist: urllib.urlretrieve(imgurl, '%s.jpg' % x) x+=1 return imglist html = getHtml("http://pic.yxdown.com/list/0_0_1.html") print getImg(html)
效果
就像这样自动爬取下载图片到本地:
导入库:
第一行的utf-8是为了支持中文。
这里我们导入了两个库,分别是 urllib 和 re。urllib 是用来进行 url 网络请求的,而 re 是一个正则表达式匹配的库。这里我们要先对网站进行模拟请求,然后找到网站中的图片进行下载。
请求网站:
第一个方法:getHtml。
这就是用来模拟浏览器访问网站的,参数 url 是要访问的网站链接,这里我们在下面的变量 html 处调用了这个方法,其访问的 url 是一个图片网站,关于选择访问网站还有一点等下要说一下。
在这个方法中,我们先用了 urllib 库的 urlopen 方法来打开网站,然后通过 read 方法来获取网站的源代码,其实就跟在网页中“右键–>检查“是一个意思。最后返回了读取到的网站源代码。
上面说了要注意的一点是,由于很多网站会禁止人们随意爬取数据,有反爬虫的技术,所以在选择要爬取的网站的时候,最好先通过这个方法获取网站源代码,然后 print 输出 html 变量看一下获取到的内容是否是正常的网页源代码,而不是403之类的禁止访问,如果被禁止了,那么自然也不可能爬取到数据了。
看完了这篇文章,相信你对用python爬取图片的方法有了一定的了解,想了解更多相关知识,欢迎关注创新互联-成都网站建设公司行业资讯频道,感谢各位的阅读!