python爬取NUS-WIDE数据库图片


Posted in Python onOctober 05, 2016

实验室需要NUS-WIDE数据库中的原图,数据集的地址为http://lms.comp.nus.edu.sg/research/NUS-WIDE.htm   由于这个数据只给了每个图片的URL,所以需要一个小爬虫程序来爬取这些图片。在图片的下载过程中建议使用VPN。由于一些URL已经失效,所以会下载一些无效的图片。

# PYTHON 2.7   Ubuntu 14.04
nuswide = "$NUS-WIDE-urls_ROOT" #the location of your nus-wide-urls.txt
imagepath = "$IMAGE_ROOT" # path of dataset you want to download in
f = open(nuswide, 'r')
url = f.readlines()
import re
import urllib
import os
reg = r"ImageData.+?jpg"
location_re = re.compile(reg)
reg = r"(ImageData.+?)/0"
direction_re = re.compile(reg)
reg = r"http.+?jpg"
image_re = re.compile(reg)
for i in url:
  filename = re.findall(location_re, i)
  direction = re.findall(direction_re, i)
  image = re.findall(image_re, i)
  if image:
    path = imagepath+filename[0]
    path_n = imagepath+direction[0]
    print path_n
    if os.path.exists(path_n):
      urllib.urlretrieve(image[1], path)
    else:
      os.makedirs(path_n)
      urllib.urlretrieve(image[1], path)

再给大家分享一个爬取百度贴吧图片的小爬虫(你懂得)

#coding=utf-8

#urllib模块提供了读取Web页面数据的接口
import urllib
#re模块主要包含了正则表达式
import re
#定义一个getHtml()函数
def getHtml(url):
  page = urllib.urlopen(url) #urllib.urlopen()方法用于打开一个URL地址
  html = page.read() #read()方法用于读取URL上的数据
  return html

def getImg(html):
  reg = r'src="(.+?\.jpg)" pic_ext'  #正则表达式,得到图片地址
  imgre = re.compile(reg)   #re.compile() 可以把正则表达式编译成一个正则表达式对象.
  imglist = re.findall(imgre,html)   #re.findall() 方法读取html 中包含 imgre(正则表达式)的  数据
  #把筛选的图片地址通过for循环遍历并保存到本地
  #核心是urllib.urlretrieve()方法,直接将远程数据下载到本地,图片通过x依次递增命名
  x = 0

  for imgurl in imglist:
  urllib.urlretrieve(imgurl,'D:\E\%s.jpg' % x)
      x+=1


html = getHtml("http://tieba.baidu.com/p/xxxx")
print getImg(html)
Python 相关文章推荐
Python通过解析网页实现看报程序的方法
Aug 04 Python
Python的加密模块md5、sha、crypt使用实例
Sep 28 Python
python从网络读取图片并直接进行处理的方法
May 22 Python
python机器学习库常用汇总
Nov 15 Python
Python编程求质数实例代码
Jan 31 Python
python框架中flask知识点总结
Aug 17 Python
Python函数中不定长参数的写法
Feb 13 Python
python中类的输出或类的实例输出为这种形式的原因
Aug 12 Python
Django关于admin的使用技巧和知识点
Feb 10 Python
python 爬取免费简历模板网站的示例
Sep 27 Python
python实现经纬度采样的示例代码
Dec 10 Python
如何用tempfile库创建python进程中的临时文件
Jan 28 Python
python2.7的编码问题与解决方法
Oct 04 #Python
Python Sqlite3以字典形式返回查询结果的实现方法
Oct 03 #Python
Python实现屏幕截图的代码及函数详解
Oct 01 #Python
Python爬取APP下载链接的实现方法
Sep 30 #Python
Python脚本实现12306火车票查询系统
Sep 30 #Python
Python ldap实现登录实例代码
Sep 30 #Python
python之Socket网络编程详解
Sep 29 #Python
You might like
六酷社区论坛HOME页清新格调免费版 下载
2007/03/07 PHP
使用PHP破解防盗链图片的一个简单方法
2014/06/07 PHP
PHP+Ajax验证码验证用户登录
2016/07/20 PHP
Nigma vs Alliance BO5 第二场2.14
2021/03/10 DOTA
JS+CSS制作DIV层可(最小化/拖拽/排序)功能实现代码
2013/02/25 Javascript
Jquery的each里用return true或false代替break或continue
2014/05/21 Javascript
浅析JavaScript中命名空间namespace模式
2016/06/22 Javascript
JS简单实现点击复制链接的方法
2016/08/03 Javascript
jquery实现网页定位导航
2016/08/23 Javascript
javascript判断firebug是否开启的方法
2016/11/23 Javascript
Vue input控件通过value绑定动态属性及修饰符的方法
2017/05/03 Javascript
JS设计模式之访问者模式定义与用法分析
2018/02/05 Javascript
JS中的算法与数据结构之常见排序(Sort)算法详解
2019/08/16 Javascript
vue表单中遍历表单操作按钮的显示隐藏示例
2019/10/30 Javascript
JavaScript实现轮播图特效
2020/04/10 Javascript
[00:21]DOTA2亚洲邀请赛 Logo演绎
2015/02/07 DOTA
python调用Delphi写的Dll代码示例
2017/12/05 Python
python通过百度地图API获取某地址的经纬度详解
2018/01/28 Python
对Django项目中的ORM映射与模糊查询的使用详解
2019/07/18 Python
Django在admin后台集成TinyMCE富文本编辑器的例子
2019/08/09 Python
Python图片的横坐标汉字实例
2019/12/04 Python
使用Keras预训练模型ResNet50进行图像分类方式
2020/05/23 Python
Keras 中Leaky ReLU等高级激活函数的用法
2020/07/05 Python
Python3 用什么IDE开发工具比较好
2020/11/28 Python
Scrapy实现模拟登录的示例代码
2021/02/21 Python
CSS3制作炫酷带方向感应的鼠标滑过图片3D动画
2016/03/16 HTML / CSS
html5调用app分享功能示例(WebViewJavascriptBridge)
2018/03/21 HTML / CSS
荷兰手表网站:Watch2Day
2018/07/02 全球购物
回门宴新郎答谢词
2014/01/12 职场文书
高中学生干部学习的自我评价
2014/02/21 职场文书
交通事故赔偿协议书
2014/04/15 职场文书
开展读书活动总结
2014/06/30 职场文书
2014年度个人工作总结
2014/11/07 职场文书
2014小学教师年度考核工作总结
2014/12/03 职场文书
大队委员竞选稿
2015/11/20 职场文书
python自动获取微信公众号最新文章的实现代码
2022/07/15 Python