1.负责设计开发分布式网络爬虫系统,进行多平台信息抓取和分析工作;
2.根据业务需求,实现大规模文本、图片数据抓取、清洗、存储等工作;
3.根据业务需求通过抓包技术Wireshark,包括代理、selenium、验证码处理等;
4.根据业务需求获取各大平台cookies实现模拟登录和模拟请求接口获取数据。
爬取沃保网全国各个保险公司下皇冠会员、钻石会员分类下的所有保险代理人的姓名、微信二维码图片、城市、保险公司、个人网站、保险从业资格证号等信息,其中保险从业资格证号信息从详情页获取,其他均从列表页即可获取遇到问题及解决方案如下:
1、需要爬取的数据经过分析,得出是所需要的数据可通过POST请求并携带参数得到,考虑到数据量较多,采用scrapy-redis进行爬取,因为该框架实现url和数据
去重、持久化、分布式比较方便,构建RedisSpider分布式爬虫,爬取更快
2、下载的微信二维码图片有些因为格式原因无法打开,筛选出来,通过os模块对这些图片批量重命名加后缀
3、每个代理人的个人网站详情页页面模板不太一样,但是有三种页面的HTML结构,在提取资格证号的时候,需要编写三种页面的xpath提取代码,进行三次判断,对应每种页面的HTML特征,适用对应的提取方法
4、考虑网站能否打开和打开时间问题,一般需要加异常判断、超时、retry等减少报错
5、数据按保险公司分表存储于mysql,减轻一个表的负载
6、爬取的数据通过redis集合、sha1加密,等技术手段,实现新提取的数据保存,已爬过的数据更新的断点续
爬功能。
7、构建USER-AGENT池,使用随机代理,随机IP采用阿布云动态IP
8、使用logging模块编写监控程序进行爬虫监控,并根据日期定向输出日志到log文件
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
暂无000000000000000000000000000000000000000000000000