python爬虫系列三:爬取糗百成人的妹子图片(scrapy框架+正则)
来源:互联网 发布:python快速排序 编辑:程序博客网 时间:2024/04/30 09:27
windows下scrapy的安装
具体的安装使用,详见scrapy官网:http://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/tutorial.html
1.pip install scrapy
2.安装py32,我的CSDN资源路劲http://download.csdn.net/detail/u010445540/9769285
3,pip install pillow
安装scrapy之后,执行命令 scrapy startproject qiubai,自动生成scrapy基础框架
main.py #这个文件是自己编写的,用来代替命令行启动 qiubaiscrapy.csv #这个是启动之后生成的数据 scrapy.cfg─qiubai │ items.py │ items.pyc │ middlewares.py │ pipelines.py #管道文件 │ pipelines.pyc │ settings.py │ settings.pyc │ __init__.py │ __init__.pyc │ └─spiders qiubaiscrapy.py #定义的spider qiubaiscrapy.pyc __init__.py __init__.pyc
爬取糗百成人的妹子图片,要定义的文件
具体的实现的实现结果和思路,请看python爬虫系列二
items.py(带爬资源的模型文件)
from scrapy import Item, Field class QiubaiItem(Item): image_urls = Field() images = Field()
qiubaiscrapy.py(定义爬虫程序)
# -*- coding: utf-8 -*- import scrapy from qiubai.items import QiubaiItem import re import os import requests class QiubaiscrapySpider(scrapy.Spider): name = "qiubaiscrapy" allowed_domains = ["qiubaichengren.com"] start_urls = ['http://www.qiubaichengren.com/%s.html' % i for i in range(1, 3)] def parse(self, response): if not os.path.exists('/meizi/'): os.makedirs('/meizi/') print 'xxxxx' reg = r'<img alt="(.*)" src="(.*)" style=".*?" />' html = response.body results = re.findall(reg, html, re.M) for result in results: qb = QiubaiItem() # qb['alt'] = result[0].decode("gbk").encode('utf-8') qb['image_urls'] = result[1] # 从url_str = 'http://wx4.sinaimg.cn/mw600/661eb95cgy1fd49qw0f97j20s00utn68.gif'中找出 661eb95cgy1fd49qw0f97j20s00utn68.gif name_reg = r'[^\/]+$' qb['images'] = re.findall(name_reg, result[1])[0] r = requests.get(qb['image_urls']) if r.status_code == 200: open(os.path.join('/meizi/', qb['images']), 'wb').write(r.content) yield qb
启动scrapy(main.py)
#!/usr/bin/env python # -*- coding: utf-8 -*- from scrapy import cmdline cmdline.execute('scrapy crawl qiubaiscrapy -o qiubaiscrapy.csv -t csv '.split())
ps:这个scrapy框架,实现的很简单,只是像我爬虫系列中的前2章一样,并没有太多复杂的逻辑,但是他的优点是可以不再spider,直接推到管道中处理,实现更加复杂的逻辑
0 0
- python爬虫系列三:爬取糗百成人的妹子图片(scrapy框架+正则)
- python爬虫系列一:爬取糗百成人的妹子图片(urllib2)
- python爬虫系列二:爬取糗百成人的妹子图片(requests+正则)
- Python爬虫系列之----Scrapy(五)网页提取的三种方式(正则,Beautiful Soup,Lxml)
- python爬虫爬取糗百成人图片多线程版本
- Scrapy:Python的爬虫框架
- Python的爬虫框架 Scrapy
- Scrapy:Python的爬虫框架
- Python爬虫Scrapy框架系列之十四
- Python Scrapy爬虫,整站爬取妹子图
- python爬虫爬取糗百成人图片单线程版本
- Python 爬虫框架 scrapy
- Python爬虫框架--Scrapy
- Python Scrapy爬虫框架
- python爬虫 -- scrapy框架
- Python爬虫---scrapy框架
- Python爬虫抓取框架:Scrapy的架构
- Python网络爬虫框架scrapy的学习
- java通过jni调用虚拟游戏控制器vjoy
- hdu 1754 线段树单点更新求最值
- leetcode
- poj 2531 Network Saboteur
- 基于threejs 的webvr
- python爬虫系列三:爬取糗百成人的妹子图片(scrapy框架+正则)
- 调用非jni标准的第三方so(AS2.2)
- Android gradle 版本问题
- java web
- React 和 Redux 快速开发实战
- NGINX限流的一些思考
- 文章标题测试
- HDFS Java API
- C# mysql 插入数据,中文乱码的解决方法