【python爬虫】爬取知乎收藏夹内所有图片
2016-08-01 10:14
609 查看
比如要爬取:https://www.zhihu.com/collection/26347524
只用自带库,没用框架。
转载请注明原地址
只用自带库,没用框架。
# -*- coding: utf-8 -*- from __future__ import unicode_literals import urllib import urllib2 import re import socket import os class Spider: def __init__(self, site_url): self.site_url = site_url self.p = 0 def get_page(self): proxy = {'http': '115.215.209.77:8118'} proxy_support = urllib2.ProxyHandler(proxy) print proxy_support opener = urllib2.build_opener(proxy_support) urllib2.install_opener(opener) i_headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36 SE 2.X MetaSr 1.0'} self.p += 1 url = self.site_url + "?page=" + str(self.p) print url request = urllib2.Request(url, headers=i_headers) response = urllib2.urlopen(request) return response.read() def get_pic(self): while 1: page = self.get_page() img_re = re.compile(r'data-original="(https://.*?)&') img_list = re.findall(img_re, page) print 'img_list' print img_list if img_list: x = 1 for img_url in img_list: print '正在保存第%s页的第%s张'%(self.p, x+1) try: urllib.urlretrieve(img_url,'%s/picture_%s_%s.jpg' % (name, self.p, x)) except urllib2.URLError, e: if isinstance(e.reason, socket.timeout): raise MyException("下载超时,跳过此图: %r" % e) continue else: continue x += 1 else: break print '请输入收藏夹代号:' in_URL = raw_input() in_URL = in_URL.strip() li = re.findall(r"\d+", in_URL) name = li[0] # li是一个list,取出其中唯一一个字符串 print '图片保存在当前目录的:%s下' % name if not os.path.exists('%s' % name): os.makedirs('%s' % name) spider = Spider(in_URL) spider.get_pic() print '所有收藏夹内图片保存完毕'
转载请注明原地址
相关文章推荐
- Python Requests爬虫——获取一个收藏夹下所有答案的图片
- 【python爬虫】爬取知乎收藏夹内所有问题名称地址保存至Mysql
- 【Python爬虫基础】抓取知乎页面所有图片
- Python练手爬虫系列No.1 知乎福利收藏夹图片批量下载
- 用python爬虫抓取知乎图片
- python Requests 知乎问题图片爬虫
- Python爬虫对知乎问题下的图片进行爬取
- Python简单知乎爬虫--爬取页面的图片并下载到本地
- python3.x百度贴吧图片爬虫(附知乎图片爬虫)
- python爬虫实战(一)--爬取知乎话题图片
- Python爬虫之知乎图片抓取
- Python爬虫从入门到放弃(十九)之 Scrapy爬取所有知乎用户信息(下)
- python简单爬虫(下载知乎图片示例)
- Python爬虫实战(五) :下载百度贴吧帖子里的所有图片
- python 爬虫爬取人人网你的好友的所有相册图片
- Python爬虫从入门到放弃(十九)之 Scrapy爬取所有知乎用户信息(下)
- Python简单知乎爬虫--爬取页面的图片并下载到本地
- Python爬虫设置代理IP爬取知乎图片
- 学习小记 - Python爬虫 (3) 利用Python爬取wanimal所有图片
- Python爬虫小实践:下载妹子图www.mzitu.com网站上所有的妹子图片,并按相册名字建立文件夹分好文件名