爬虫开源项目:SpiderFlow

官网:spider-flow

特点

  • spring boot 多模块项目
  • 图形化定义爬虫过程
  • 爬取数据可存入数据库
  • 可自定义节点,比如新写一个存入excel的节点。那么当输出时就可以输出到excel中。
  • 支持css选择器、正则提取
  • 支持Xpath/JsonPath提取

部署环境 

1.git下载源码 https://github.com/ssssssss-team/spider-flow

        git clone git@gitee.com:ssssssss-team/spider-flow.git

        或者直接

2.mysql中执行源码当中db文件下的mysql 建表语句 。然后spider-flow-web项目的application配置mysql的用户名、密码

3.idea打开解压后的项目文件夹,等待依赖下载完成。运行 spider-flow-web项目的SpiderApplication

4.浏览器访问http://localhost:8088/  点击某个示例,查看它的流程。

学习spider使用方法 

1.查看官网上提取网页数据的抽取函数等内容 编写流程化的爬虫过程 spider-flow

(1)图形化节点及每个节点执行后返回值

        比如爬取节点执行完后,会产生一个resp变量名的HttpResponse类型的变量

   

(①)爬取节点执行完后,会产生一个resp变量名的HttpResponse类型的变量。 

(②) 循环节点会循环之后的每个节点  此项没值时,执行一次

 (③)变量节点  常用来获取页面的某些节点或者文本值

(2)每个类对应方法 

     通过官网  ‘类型扩展‘查看每个类的方法和返回值

(3)选择html页面元素的方法  

(①)Xpath/JsonPath提取   

  resp变量的xpath方法按照xpath表达式选择元素

   

      一文读懂XPath基本语法_XPath语法详解_XPath教程_H-大叔的博客-CSDN博客  、 XPATH基本语法_xpath语法_明月清风~~的博客-CSDN博客

(2)支持css选择器、正则提取 

     CSS 选择器参考手册  

    resp变量的seletor方法按照css选择器选择元素、string变量或resp的regrex方法进行正则提取

(3)支持jsonpath解析 对json数据进行处理

   resp变量的json、jsonpath方法,必须是针对json数据。

    JsonPath完全介绍及详细使用教程_jsonpath的用法_软件测试情报局的博客-CSDN博客

   图片

实战编写爬虫流程

spider示例百度热点分析

(1)页面编写流程,编写提取页面值得变量,然后后台查看报错等信息进行调试

(2)爬取网页分析

    如果想获取热点的标题,可以找到div元素的唯一标识是class

 

(3)流程分析

   开始节点代表爬虫开始;

   爬取节点定义爬取url的request请求信息,比如请求携带参数、body、cookie、设置页面编码等;

   定义变量从爬取到的结果中提取元素值;

   输出节点输出到数据库或csv等文件。

定义变量从爬取到的结果中提取元素值,根据css选择器、xpath、jsonpath等方法选择指定节点。点击执行,会输出结果。

Selenium插件 

Selenium插件 模拟浏览器点击、获取指定元素等操作。

Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,Selenium 可以直接运行在浏览器上,它支持所有主流的浏览器。

因为Selenium可以控制浏览器发送请求,并获取网页数据,因此可以应用于爬虫领域。

Selenium 可以根据我们的指令,让浏览器自动加载页面,获取需要的数据,甚至页面截屏,或者判断网站上某些动作是否发生。

Selenium 自己不带浏览器,不支持浏览器的功能,它需要与第三方浏览器结合在一起才能使用。

参考文档 

Selenium爬虫_The Devil of hell的博客-CSDN博客

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fang·up·ad

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值