网络爬虫入门

1.爬虫的定义

       爬虫是一种抓取网页信息的工具

2.爬虫的三大基本功能:

       1.http请求:用于根据url获取网页源码

       2.网页解析 : 对获取到的网页源码进行解析,提取出符合需要的url链接和网页内容

       3.持久化:对提取到的网页内容进行存储(数据库,文件,建立索引等)

3.爬虫的分类及其工作流程

       1.单机爬虫

            

       2.分布式爬虫           

         网络爬虫入门_第1张图片

 4.爬虫常见问题及解决方案:      

       常见问题: 

         1.网页爬取频率过快会被限制爬取

         2.部分页面重定向导致无法直接获得网页源码

         3.Ip被加入黑名单

         4.获取网页源码出现乱码

         5.部分页面由js生成无法直接获得源码

         6.控制爬取的深度

         7.部分页面需要登录才能获取源码

         8.爬取的性能瓶颈在于下载网页源码

      对应解决方案:

         1.在程序中动态调整爬取速率(线程休眠)

         2.根据http头部信息获取重定向页面再次请求

         3.切换代理ip

         4.根据http头部字段判断网页编码

         5.采用三方插件模拟浏览器引擎动态加载

         6.为每个url添加一个depth属性,解析到设计的爬取深度时停止爬取

         7.利用cookie模拟登录

         8.利用多线程爬取,或者考虑分布式爬取

 

你可能感兴趣的:(Java,爬虫)