python下载网络图片
2016-10-29 18:16
260 查看
#!/usr/bin/env python #-*- coding: utf-8 -*- #通过urllib(2) import urllib,urllib2,gevent #引入正则表达式模块,时间模块 import re,time from gevent import monkey monkey.patch_all() class Get_image(): def __init__(self,url,pages): self.pages = pages self.url = url self.page_list = [] #列表页集合 def get_page_url(self): # 得到所有列表页 for page in range(1, self.pages): url = self.url + str(page) + "#comments" self.page_list.append(url) def geturllist(self,url): url_list=[] print url s = urllib2.urlopen(url) text = s.read() #正则匹配,匹配其中的图片 html = re.search(r'<ol.*</ol>', text, re.S) urls = re.finditer(r'<p><img src="(.+?)jpg" /></p>',html.group(),re.I) for i in urls: url=i.group(1).strip()+str("jpg") url_list.append(url) return url_list def download(self,down_url,save_dir): name=str(time.time())[:-3]+"_"+re.sub('.+?/','',down_url) print name urllib.urlretrieve(down_url, save_dir+name) def do_img(self,save_dir): jobs = [] self.get_page_url() # 进行图片下载 for i in self.page_list: for (downurl) in self.geturllist(i): jobs.append(gevent.spawn(self.download, downurl,save_dir))#使用协成自动切换io #self.download(downurl,save_dir) gevent.joinall(jobs) if __name__ == '__main__': images = Get_image("http://jandan.net/ooxx/page-",10) images.do_img("/data/python/image/")
相关文章推荐
- python 获取网络图片并下载到本地(由网络源码改编)
- Python下载网络图片
- python 下载网络图片到本地
- python 使用 urllib.urlretrieve()下载网络图片,在本地打开提示文件损坏无法打开
- python-网络图片下载(两种方式)
- python中使用网络爬虫下载图片
- python3.6 urllib.request库实现简单的网络爬虫、下载图片
- Python3爬取妹子图——爬虫&下载网络图片
- python 网页爬虫,下载网络图片
- python 网络爬虫爬取落网 期刊内容 下载图片 音乐
- Python3网络爬虫:Scrapy入门之使用ImagesPipline下载图片
- python︱批量操作文件(os)、图片操作技巧(下载网络图片、skimage.io)
- python 3.x网络爬虫 下载图片
- python3.2从网络中下载一张图片
- python网络图片下载---跟我一起爬王者农药皮肤吧
- Android异步下载网络图片(其一)
- java网络编程:下载网络上的一张图片
- Android异步下载网络图片&android解析xml文件的方式&使用Adapter为ListView提供数据
- Android 下载网络图片注意的问题
- 异步网络编程之图片批量抓取下载(C#)