scrapy 记录
来源:互联网 发布:淘宝游戏充值赚钱吗 编辑:程序博客网 时间:2024/05/21 06:50
命令行 scrapy startproject tutorial
生成如下目录:
<span style="font-size:14px;">tutorial/ scrapy.cfg tutorial/ __init__.py items.py pipelines.py settings.py spiders/ __init__.py ...</span>
- scrapy.cfg: 项目的配置文件
- tutorial/: 该项目的python模块。之后您将在此加入代码。
- tutorial/items.py: 项目中的item文件.
- tutorial/pipelines.py: 项目中的pipelines文件.
- tutorial/settings.py: 项目的设置文件.
- tutorial/spiders/: 放置spider代码的目录
默认下载图片功能,有以下步骤
1、在tutorial/items.py中添加
image_urls = scrapy.Field()images = scrapy.Field()
2、开启你的图片管道,需要在tutorial/settings.py中添加ITEM_PIPELINES = {'scrapy.contrib.pipeline.images.ImagesPipeline': 1}后面的数字可有可无,按照数字大小进行排序,按顺序加载管道ITEM_PIPELINES
3、设置图片存储路径,需要在tutorial/settings.py中设置IMAGES_STORE为图片存储路径,否则管道将保持禁用状态,即使设置了
记得下载Pillow
如果要自定义自己的图片管道,比如默认的图片下载管道有限制,图片不能分组存储,图片不能修改文件名等,可以自定义自己的图片下载管道,如,自定义MyImagesPipeline,即tutorial/MyImagesPipeline.py,里面定义class MyImagesPipeline(ImagesPipeline),然后在tutorial/settings.py里在ITEM_PIPELINES里加上自定义的MyImagesPipeline,形如ITEM_PIPELINES = ['tutorial.MyImagesPipeline.MyImagesPipeline','tutorial.pipelines.MmonlyPipeline']
其他:
1、要将分析到的图片链接放到item里面的image_urls里面,这个东东分明是个list,我用append来加入,运行会有错误提示
别人的代码是item['image_urls'] = hxs.select('//*..******').extract(),这样的确可以,而且有了这个赋值之后,在用append加入字符串(url)就可以正确下载了
2、一开始没有做avoid banning的工作,只能下载几张图片,其他所有的图片都下不了(我也怀疑是家里或者外部网络的原因)
打击了我一天多后,查反爬虫技巧,看scrapy的相关文档,我做了如下工作
1、禁用Cookies
2、设置User Agent。查看user agent:在chrome中,地址栏输入chrome://version/
今晚爬了一下煎蛋的妹子图,成功了哦。再次尝试的时候,竟然就可以了,下载飞快
- scrapy 记录
- scrapy 排错记录
- 【scrapy】使用记录
- scrapy学习记录0401
- scrapy使用记录
- Scrapy 入门记录(1)
- Scrapy 使用记录
- 记录:安装scrapy与pywebkitgtk
- python Scrapy环境安装记录
- 【Scrapy】学习记录1_一个基本的Scrapy项目
- 学习搭建scrapy,记录遇到的问题
- 【Scrapy】学习记录2_爬虫Spider
- 爬虫框架Scrapy学习记录I--ing
- Mac上安装Scrapy的记录
- Scrapy问题记录(不定期更新)
- scrapy
- Scrapy
- scrapy
- 7.1.2 C# 中的函数式数据结构
- 黑马程序员——黑马基础测试
- PHP cURL中CURLOPT_CONNECTTIMEOUT和CURLOPT_TIMEOUT的区别
- windows 五种socket i/o 模型
- MFC数组类CArray的使用
- scrapy 记录
- Subsets II
- Java webservices
- Kafka通过timestamp获取offset的机制详解
- c#编程:有5个人坐在一起,问第5个人多少岁的问题
- vim 替换时,大小写控制
- Colored SQL--How to force the AWR to capture a specified SQL even if it is not the top one
- dlopen函数详解
- 第四篇,驱动的安装