博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python抓取豆瓣妹子图片并上传到七牛
阅读量:7039 次
发布时间:2019-06-28

本文共 2376 字,大约阅读时间需要 7 分钟。

  hot3.png

抓取图片的程序有借鉴,

自己做了一些改进,模拟了浏览器请求,防止请求被服务器中断。

# _*_ coding: utf-8 _*_#---------------------------------------#   程序:抓取 豆瓣妹子 图片#   版本:0.1#   作者:liu jia#   日期:2014-01-07#   语言:Python 2.7#   说明:只是一个简单的测试,借鉴了之前开源中国的程序,为之加上了模拟请求,防止被服务器拒绝请求#---------------------------------------import urllib2import osimport cookielibfrom bs4 import BeautifulSoupcookie = cookielib.CookieJar()cookie_handler = urllib2.HTTPCookieProcessor(cookie)header = {    'User-Agent': 'Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.72 Safari/537.36'}path = os.getcwd()new_path = os.path.join(path, u'豆瓣妹子')if not os.path.isdir(new_path):    os.makedirs(new_path, 7777)page_number = 1def get_image():    global page_number    url = 'http://www.dbmeizi.com/?p=%s' % page_number    site_url = 'http://www.dbmeizi.com'    request = urllib2.Request(url=url, headers=header)    opener = urllib2.build_opener(cookie_handler)    response = opener.open(request)    page = response.read()    soup = BeautifulSoup(page)    for image in soup.findAll('img'):        if not image:            exit()        file_handler = urllib2.urlopen(site_url+image['data-bigimg']).read()        with open(u'豆瓣妹子/'+image['data-bigimg'][-11:], 'wb') as empty_file:            empty_file.write(file_handler)            print image['data-bigimg']    page_number += 1    print '第%s页下载完毕,现在开始下载第%s页' % (page_number,page_number+1)    get_image()get_image()

图片过多,又写了一个程序把自己电脑上面的这些图片放到七牛,毕竟这些图片被别人看见了不太好,是不是过于猥琐了。

# _*_ coding: utf-8 _*_#---------------------------------------#   程序:把本地文件上传到七牛云服务器#   版本:0.1#   作者:liu jia#   日期:2014-01-07#   语言:Python 2.7#   说明:只是一个简单的测试,并且,为了自己的安全 :)#---------------------------------------import qiniu.confimport sysimport os#登录后从#https://portal.qiniu.com/setting/key获取qiniu.conf.ACCESS_KEY = "xxxxxxxxxxxxxxxxxxx" qiniu.conf.SECRET_KEY = "xxxxxxxxxxxxxxxxxxx"import qiniu.ioimport qiniu.rspolicy = qiniu.rs.PutPolicy('xxxxx')# 空间名即bucket_nameuptoken = policy.token()extra = qiniu.io.PutExtra()extra.mime_type = "image/jpeg"path = os.getcwd()print pathpicture_path = os.path.join(path, u'豆瓣妹子')for item in os.listdir(picture_path):    item = picture_path+'\\'+item    ret, err = qiniu.io.put_file(uptoken, None, item, extra)    print item+'---------uploaded'if err is not None:    sys.stderr.write('error: %s ' % err)    exit()

转载于:https://my.oschina.net/sonice/blog/191926

你可能感兴趣的文章
Redux入门学习
查看>>
我的友情链接
查看>>
利用AWS boto实现EC2 存储卷的自动快照
查看>>
微软私有云解决方案专家认证之路
查看>>
曾经的痛啊 关于 becomeFirstResponder
查看>>
Android Service
查看>>
解决iphone safari上的圆角问题
查看>>
zabbix源码安装
查看>>
phpcms笔记
查看>>
查看系统用户登录信息命令
查看>>
CMS之图片管理(2)
查看>>
php 魔术方法总结(持续更新)
查看>>
利用ADMT进行Exchange跨域迁移之一:配置域信任
查看>>
javascript获取系统当前时间
查看>>
【java解惑】java中那些反常识的小知识
查看>>
bash内部命令变量
查看>>
python3.4 之sqlite3,pymysql
查看>>
网络接口
查看>>
centos下Extmail的搭建
查看>>
我的友情链接
查看>>