网络爬虫的原理
网络爬虫就是根据网络,把上面的相关信息比如源代码以字符串的形式爬取下来,并且涉及到网站下的一系列网站。
DNS域名解析服务器可以通过ping+域名/ip来测试是否连通,dns可以记录网站访问次数,从而评估出网站的使用权重,同时dns也可以抓取ip根据ip使用次数计算权重,百度提供了一段js免费提供可以主动给百度发获取自己的地址。
以上是指的横向爬虫。
定向垂直抓取:就是抓自己想要的网站(注意,抓取只能抓到第一次请求的数据(比如源代码),其他的ajax属于二次请求不能直接抓取,需要从抓取到的源代码中找到相应的a标枪的链接继续抓取)
如果链接不全的需要分工分析网络链接应该是什么样子的。
不管是什么类型的前端文件(.html .jso .vhtml .aa .bb …)前端浏览器都是只要一个符合html规范的字符串就能显示页面,跟后缀名是什么无关,只是前端字符串的载体,最后tomcat会根据对应出来的文件编码进行翻译显示。
当爬取下来之后使用split进行切分,最终切分出自己需要的数据。
针对不同网站可以封装不同的方法进行调取爬虫。
爬虫做出来之后还要防止反复爬去重复的数据,爬取下来存在数据库的数据每次都要进行对比,如果存在就不往数据库存,因为跟内存做对比比跟磁盘对比更快所以每次爬取下来数据可以把数据库数据加载到内存进行比对之后再将数据传回数据库。
其他比较快的方法,可以通过设计当前爬取时间,然后下次爬取只爬比这次时间晚的就可以。