Scrapy 貌似是 Python 最出名的爬虫框架

0. 文档

中文文档:https://scrapy-chs.readthedocs.io/zh_CN/0.24/intro/tutorial.html
官方文档:https://docs.scrapy.org/en/latest/
中文文档很旧了,建议直接看官方英文文档。

1. 安装

pip install scrapy

还有什么不是这么装的吗。。

2. 新建项目

scrapy startproject <projectname>

非常简单,进入你要放项目的目录,一行命令scrapy自动帮你生成项目框架文件,结构如下:

tutorial/
scrapy.cfg            # 框架配置文件tutorial/             # 整个项目目录__init__.pyitems.py          # 数据结构在这里定义pipelines.py      # 管道处理settings.py       # 项目配置文件spiders/          # 爬虫目录__init__.py

3. 流程介绍

  • items.py 定义你所爬取的目标数据的结构。比如你要抓取贴吧,那么结构应该类似 用户-头像-主帖id-帖子id-帖子内容-其他等等。如果抓取知乎,数据结构应该类似 用户-头像-签名-回答-问题id-点赞数-评论数。简单来说,就是设计表结构。
  • pipelines.py 按照设计者命名来分析,这个管道的作用是将抓取的数据进行一定的处理封装,里面内置的 parse_item 方法也从名字上印证这一点。比如抓到的是转码数据,在这里可以解码翻译。实际项目中通常在这里进行数据库落地操作,把抓取的 item 存入mysql或者mogodb,最后再 return item 即可。
  • spiders/xxx.spider.py 实际的爬虫策略都在这个目录下。一个文件表示一个爬虫。通常的流程是 初始链接(首页或者登录页) -- 分析内容,在回调中继续抓取下一页(执行登录操作) -- 继续分析内容,回调抓取... 这里我们不用考虑cookie,scrapy会自动帮我们处理。

4. 小结

如果之前有用 urllib 进行过爬虫联系,那么只要熟悉了scrapy框架的各个文件作用,使用scrapy可以说是收到擒来.有几个参考方法:

  • post请求(登录用到): formRequest
  • 分析网页内容: response.css()

转载于:https://www.cnblogs.com/dapianzi/p/7522173.html

Scrapy框架初探相关推荐

  1. scrapy获取a标签的连接_Python爬虫 scrapy框架初探及实战!

    Scrapy框架安装 操作环境介绍 操作系统:Ubuntu19.10 Python版本:Python3.7.4 编译器:pycharm社区版 安装scrapy框架(linux系统下) 安装scrapy ...

  2. Python爬虫-Scrapy框架(四)- 内置爬虫文件 - 4.2 初探Crawl Spider

    Python爬虫-Scrapy框架(四)- 内置爬虫文件 - 4.2 初探Crawl Spider 写在前面 初探Crawl Spider 创建Crawl Spider项目 对比Basic与Crawl ...

  3. 这年头学爬虫还就得会点 scrapy 框架

    Hello,我是 Alex 007,为啥是007呢?因为叫 Alex 的人太多了,再加上每天007的生活,Alex 007就诞生了. 这几天一直在练车,只能在中间休息的时候写一写博客,可怜去年报的名到 ...

  4. python爬虫之Scrapy框架的post请求和核心组件的工作 流程

    python爬虫之Scrapy框架的post请求和核心组件的工作 流程 一 Scrapy的post请求的实现 在爬虫文件中的爬虫类继承了Spider父类中的start_urls,该方法就可以对star ...

  5. Scrapy框架中的crawlspider爬虫

    1 crawlspider是什么 在spider中要寻找下一页的url地址或者内容的url地址,想想是否有简单的方法省略寻找url的过程? 思路: 从response中提取所有的满足规则的url地址 ...

  6. Scrapy框架的概念、作用和工作流程

    1. scrapy的概念         Scrapy是一个Python编写的开源网络爬虫框架.它是一个被设计用于爬取网络数据.提取结构性数据的框架. Scrapy是一个为了爬取网站数据,提取结构性数 ...

  7. 爬虫基础分享Scrapy框架流程图与安装

    从头开发一个爬虫程序是一项烦琐的工作,为了避免因制造轮子而消耗大量时间,在实际应用中我们可以选择使用一些优秀的爬虫框架,使用框架可以降低开发成本,提高程序质量,让我们能够专注于业务逻辑.所以,我们一起 ...

  8. python 爬虫 学习笔记(一)Scrapy框架入门

    沉迷于通过高效算法及经典数据结构来优化程序的时候并不理解,为什么多线程可以优化爬虫运行速度?原来是程序特性所决定的:传统算法的程序复杂度主要来源于计算,但网络程序的计算时间可以忽略不计,网络程序所面临 ...

  9. Windows7 Scrapy框架建立

    Windows7 Scrapy框架建立 因为在Windows7中安装python 的 scrapy框架实在是太繁琐,而且在网上查找的scrapy安装过程全都是告诉你去哪里下载,所以光去找东西都找了很久 ...

最新文章

  1. 腾讯首个AI开源项目完成3.0版本迭代,从顶级开源基金会毕业
  2. .Net Core小技巧 - Swagger适配虚拟目录及二级目录
  3. IE6下position:absolute的定位BUG(转载)
  4. HTML5笔记——formData
  5. CString TCHAR互相转换
  6. 总结常见的ES6新语法特性
  7. C++实践參考——二进制文件浏览器
  8. JAVA 7 正式版发布 新特性一览表
  9. 出生就遇浏览器大战,亲爹还不爱,命运坎坷的JavaScript终于苦尽甘来
  10. Advanced Auto Layout
  11. swagger注释HTML,Swagger注解生成Rest Api文档
  12. 高速扩张的云市场,需要怎样的安全能力?
  13. 【Educoder作业】※网页抓取及信息提取
  14. ImportError: /usr/local/lib/python3.7/dist-packages/cv2/cv2.cpython-37m-arm-linux-gnueabihf.so: unde
  15. 三个理由告诉你 为什么社保不能断缴
  16. arp攻击----arpspoof
  17. 视频超分——03 SPMC
  18. 怎样找回e盘删除的文件夹?分享三种恢复方法
  19. 软件测试面试题之如何对web系统进行全面测试(持续更新中,求关注)
  20. 基于simulink的无刷直流电机本体建模及六步逆变器控制

热门文章

  1. nyromodal 非常棒的弹出层,可内嵌各种文件
  2. AAAI 2020 | 腾讯优图10篇论文入选,含速算识别、视频识别等主题
  3. CVPR 2019 | 步步为营!通过迭代式模糊核预测提高超分辨质量
  4. java中如何传递参数给控制器_如何使用ui-router中的ui-sref将参数传递给控制器
  5. 一个适合于Python初学者的入门练手项目
  6. 《是碰巧还是执着?python所阅读的每一场知识点,唯一的共同点就是——参赛选手中,有详解Python的装饰器!》
  7. 程序员需要学习太多数学知识吗?
  8. Github | 标星3W+ ! Face Recognition世界上最简洁的人脸识别库!
  9. 物体检测的过去、现在和未来
  10. 一个实例带你搞懂Apriori关联分析算法