scrapy 框架遇到的问题


近来学习scrapy 框架, 遇到了不少框架内的坑, 有的解决了,有的还未解决,先记录一下.

关于 item 的导包问题

视频里, 我看到老师都是 from xxxpro.items import xxxItem, 但是我如果这样写, 语法就会报错, pychram 直接给我报错了. 我只能用 from ..Items import xxxItem 来导包 item , 这样才能正常使用.

分布式爬虫遇到的问题, 也是和导包 item 有关

在scrapy 分布式爬虫中, 也是需要导包 Item, 但是此时, 由于 spider 的父类改变了, 并且运行的命令也变了, 变成了 scrapy runspider xxx.py , 从而导致 Item 的导包 有问题. 我使用 .. 相对路径导入不行, 项目绝对路径+文件路径的绝对路径也不行, 使用视频里老师用的 from xxxpro.items import xxxItem 也不行. 不知道是不是我的 pycharm 以及 python版本和 scrapy版本与视频里 老师的版本不同导致的,总之就是想尽办法都是导包Item报错.
最终的原因: 找到了一个爬虫大佬, 终于明白了, 这是 scrapy 框架的坑, scrapy 设计的时候认为spider 不应该导入items 里的东西, 因此 scrapy 运行 spider 的时候是”复制一份”然后等着被scrapy 核心引擎调用, 所以我调用上次目录它不理我也 不奇怪, 可是这只能解释 分布式爬虫导包 item 出错的原因.
可我在 scrapy 不使用 分布式的时候, 是可以使用上次目录导包的, 因此, 这个 scrapy 框架是存在一定的问题.

连接 redis 数据库的问题

使用 scrapy 连接 redis 数据库就报错, 是在建立连接就报错, 这个问题, 还没找出来, 先放着, 等待解决.


文章作者: 陌上人如玉
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 陌上人如玉 !
 上一篇
基于协程的异步编程知识点总结 基于协程的异步编程知识点总结
近来学习了基于协程的异步编程, 做个知识点总结一下.
2021-01-11
下一篇 
爬取站长之家遇到图片懒加载的解决过程 爬取站长之家遇到图片懒加载的解决过程
现在不少网站对于图片资源进行懒加载, 可以有效限制爬虫.所谓的懒加载, 是当我们打开浏览器, 当界面进入可视化区域之后, 图片资源就会进行请求然后展式出来.所以我们直接对url进行请求是拿不到.对于懒加载的图片, 我们要怎么解决呢?
2020-12-21
  目录