webmagic+selenium+tesseract-ocr实现米扑代理爬取

👨🏻‍🎓博主介绍:大家好,我是芝士…

👨🏻‍🎓博主介绍:大家好,我是芝士味的椒盐,一名在校大学生,热爱分享知识,很高兴在这里认识大家🌟
🌈擅长领域:Java、大数据、运维、电子
🙏🏻如果本文章各位小伙伴们有帮助的话,🍭关注+👍🏻点赞+🗣评论+📦收藏,相应的有空了我也会回访,互助!!!
🤝另本人水平有限,旨在创作简单易懂的文章,在文章描述时如有错,恳请各位大佬指正,在此感谢!!!


目录

WebMagic简介

Selenium简介

Tesseract-OCR简介

一、项目需求

二、技术可行性分析

三、技术实施


WebMagic简介

webmagic是不需要配置,便捷数据挖掘的爬虫框架,其拥有简单且灵活的api。webmagic整体采用模块化架构,整个爬虫的生命周期:提取连接——>页面下载——>内容提取——>数据持久化,并且支持多线程挖掘,支持分布式挖掘,支持自动重试,自定义cookies,模块可定制化等功能。

Selenium简介

selenium是一款遵守Apache License 2.0协议的开源框架,用于Web程序自动化测试工具,selenium测试运行在浏览器中,就像真的用户在操作一样,包括Firefox、Safari、Chrome、Opera等等。

Tesseract-OCR简介

一款由HP实验室开发由Google维护的开源OCR引擎,与MODI相比,可以不断的训练的库,使图像转文本的能力不断增强。

一、项目需求

总所周知,在数据挖掘领域,其中及其重要的就是数据的爬取,而在大数据时代的到来之后对数据量的需求更加的大,这迫使爬虫需要在短时间内爬取更多的数据,但是现在许多的网站都设置了反扒机制,最常见的反扒机制就是封锁段时间请求过多的ip,而解决方式之一就是使用代理服务器,通过请求道代理服务器,代理服务器去请求目的地站点,这样即使被封ip也是代理服务器被封锁,而我们通常没有那么多代理服务器,市面上有许多的代理服务商,比如我们今天要爬取的对象米扑代理,它虽然有收费的代理服务器,但是它的免费代理也是可以用的,而我们的任务就是爬去ip、端口、类型、匿名度、国家(省市)、运营商、响应时间、传输速度、验证日期等等。

项目成品gitee地址:mipuproxy: webmagic+selenium+tesseract-ocr实现米扑代理代理爬去

二、技术可行性分析

先上图,

很显然除了端口之外还是比较好处理的,由于端口是一张图片,就联想到使用tesseract-ocr进行识别,为了可以直观的无阻碍的模拟人访问使用selenium进行辅助模拟人的操作,整体的爬虫系统使用基于Java编写的WebMagic实现。

三、技术实施

项目整体使用SpringBoot工程化,如下图:

分层明确,dao层为数据访问层、entity为数据库实体、service服务层、以及webmagic的任务层 。

如下为本次项目maven所需的包的坐标:

dao层接口:

与数据库交互用的实体类:

service服务:

webmagic的task任务:

SpringBoot启动类:

resources资源:

application.yml:

selenium.ini:

本文来自网络,不代表软粉网立场,转载请注明出处:https://www.rfff.net/p/3440.html

作者: HUI

发表评论

您的电子邮箱地址不会被公开。

返回顶部