分布式爬虫

来源:互联网 发布:武汉软件测试培训班 编辑:程序博客网 时间:2024/05/17 08:51

前期准备:

1安装:

  1. conda install scrapy;
  2. scrapy startproject 项目名;

2爬虫的几个要素:
输入目标网址=> 编写处理规则(正则表达式或者xpath语法)=>对得到的数据进行处理

  1. 请求发送对象(sender,对于request的封装,防止被封)
  2. 解析文档对象(将请求的网页当作是html文档还是字符串)
  3. 承载所需要的解析对象(标准格式的数据承载者)
  4. 获取所需对象后的操作者 (得到对象后,是以文件形式保存还是存入数据库)
  5. 整个流程的错误处理者(整个流程的异常监控者)

3官方文档常用概念:

  1. 命令行工具(Command line tools)
    学习用于管理Scrapy项目的命令行工具
  2. Items
    定义爬取的数据
  3. Spiders
    编写爬取网站的规则,
  4. 选择器(Selectors)
    使用XPath提取网页的数据
  5. Scrapy终端(Scrapy shell)
    在交互环境中测试提取数据的代码
  6. Item Loaders
    使用爬取到的数据填充item
  7. Item Pipeline
    后处理(Post-process),存储爬取的数据
  8. Feed exports
    以不同格式输出爬取数据到不同的存储端
  9. Link Extractors
    方便用于提取后续跟进链接的类。

常用操作:

1:连续爬取

  1. 预加载需要爬取的列表,直接到这个列表都处理完,相应的爬取工作都已经完成了。
    做法:在start_urls 里面生成相应的列表
  2. 从第一页开始爬取,遇到有下一页标签的,那继续爬取,如果没有下一页类似的标签,那表示已经爬到最后一页
    做法:爬取下一页实现全趴取的过程,使用yield关键字
  3. 分析当前页面的所有链接,对于链接符合某种特定规则的,继续爬取,如果没有那表示爬取工作完成(此时需要建立已经爬取列表,防止重复操作)

2:数据输出方式
3:与数据库连接

0 0
原创粉丝点击