2017年我自己写代码开发了各种爬虫系统,喜欢破解各种网站验证码,cookie加密,采集数据被封ip技术,从事了5年多php和python技术研发工作,破解过天猫、淘宝、天某查、企查查、启信宝等各种网站的数据爬虫技术工作,随着互联网技术的发展,大数据和人工智能成为当前的风口,大数据和人工智能是未来的趋势和方向,于是技术也从互联网技术扩展到大数据技术,关于爬虫技术,从事爬虫工作有不少的心得,希望能够给其他的朋友分享一些个人的经验和心得。以下从天某查、天猫、淘宝等个种网站的数据采集面临的技术和如何快速的得采集到整个网站的数据而且不受限制和封号。(需要爬虫技术交流的朋友欢迎加我qq:2779571288)
最近在自己用python+mongdb写了一套分布式多线程的天某查爬虫系统,实现了对天某查整个网站的全部数据各种维度的采集和存储,并且根据天某查网页的数据结构建立了30个表来存储30个维度的数据,很多做技术的朋友在爬天某查的时候会遇到以下几个问题,我把我的经历和解决方案分享给大家。
1、天某查和启信宝哪一个的数据更难爬呢?
其实在准备爬天某查数据的时候,我对启信宝、企查查类似的网站分布从数据的完整性和数据的更新及时性分析了,结果个人觉得天某查的数据比其他网站的要完整,数据维度要多一些,数据更新的时候也比较快,所以最后选择了爬取天某查里面的企业数据。
天某查的30个核心数据维度:
首先整个网站有主要核心数据有以下30大模块:1基本信息、2法人代表、3主要成员、4股东&出资、5变更记录、6公司年报、7司法风险、8舆情事件、9岗位招聘、10商品信息、11网站备案、12商标数据、13专利数据,、14 作品著作权软件著作权、16对外投资关系、17税务评级、18行政处罚、19进出口信用、20企业评级信用等十九个维度的企业数据,如果把这些数据爬下来,并且结构化,实现可以查询可以检索使用,可以导出到excel,可以生成企业报告,那么需要建立数据库来存储这些数据,像这种非结构化的数据我们选择mongdb数据库是最合适的。
采集速度太频繁了,会被封IP问题 怎么解决
当我们发出去的http请求到天某查网站的时候,正常情况下返回200状态,说明请求合法被接受,而且会看到返回的数据,但是天某查有自己的一套反爬机制算法,如果检查到同一个IP来不断的采集他网站的数据,那么他会被这个IP列入异常黑名单,您再去采集它网站数据的时候,那么就永远被拦截了。怎么解决这个问题呢,其实很简单,没有错用代理IP去访问,每一次请求的时候都采用代理IP方式去请求,而且这个代理IP是随机变动的,每次请求都不同,所以用这个代理IP技术解决了被封的问题。
4 天某查2个亿的数据量怎么存储?需要多少的代理IP
我在写爬虫去爬天某查的时候,刚开始使用网上的免费或者收费的代理IP,结果90%都被封号,所以建议大家以后采集这种大数据量网站的时候 不要使用网上免费的或者那种收费的IP,因为这种ip几秒钟就会过期,意思就是你没有采集网或者刚刚访问到数据的时候,这个IP就过期了导致你无法采集成功,所以最后我自己搭建了自己的代理池解决了2个亿天某查数据的采集封IP问题。
5 天某查网站数据几个亿数据的存储
数据库设计很重要,几个亿的数据存储 数据库设计很重要
我当时花了10天时间吧天某查爬虫系统全部开发完毕,可以每天爬去百万条数据,19个维度的数据,数据爬下来后主要是数据的存储和管理,数据库的我采用了mongdb,爬虫开发技术我采用了python,几个亿的数据后台管理系统我采用php,我自己架构了分布式架构系统,所以我采集的我采用分布式+多线程+集群的方式,采集速度相当的快!(需要爬虫技术交流的朋友欢迎加我qq:2779571288)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。