草庐IT

爬虫与反爬虫技术简介

vivo互联网安全团队-XiePeng互联网的大数据时代的来临,网络爬虫也成了互联网中一个重要行业,它是一种自动获取网页数据信息的爬虫程序,是网站搜索引擎的重要组成部分。通过爬虫,可以获取自己想要的相关数据信息,让爬虫协助自己的工作,进而降低成本,提高业务成功率和提高业务效率。本文一方面从爬虫与反反爬的角度来说明如何高效的对网络上的公开数据进行爬取,另一方面也会介绍反爬虫的技术手段,为防止外部爬虫大批量的采集数据的过程对服务器造成超负载方面提供些许建议。爬虫指的是按照一定规则自动抓取万维网信息的程序,本次主要会从爬虫的技术原理与实现,反爬虫与反反爬虫两个方面进行简单的介绍,介绍的案例均只是用于

爬虫与反爬虫技术简介

vivo互联网安全团队-XiePeng互联网的大数据时代的来临,网络爬虫也成了互联网中一个重要行业,它是一种自动获取网页数据信息的爬虫程序,是网站搜索引擎的重要组成部分。通过爬虫,可以获取自己想要的相关数据信息,让爬虫协助自己的工作,进而降低成本,提高业务成功率和提高业务效率。本文一方面从爬虫与反反爬的角度来说明如何高效的对网络上的公开数据进行爬取,另一方面也会介绍反爬虫的技术手段,为防止外部爬虫大批量的采集数据的过程对服务器造成超负载方面提供些许建议。爬虫指的是按照一定规则自动抓取万维网信息的程序,本次主要会从爬虫的技术原理与实现,反爬虫与反反爬虫两个方面进行简单的介绍,介绍的案例均只是用于

Go基础系列 01-Golang简介

1.什么是GolangGo(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。Go支持面向对象,而且具有真正的闭包(closures)和反射(reflection)等功能。2.谷歌为什么要创造Go语言1.计算机硬件技术更新频繁,性能提高很快。目前主流的编程语言发展明显落后于硬件,不能合理利用多核多CPU的优势提升软件系统性能。2.软件系统复杂度越来越高,维护成本越来越高,目前缺乏一个足够简洁高效的编程语言。【现有的编程语言:1.风格不统一⒉计算能力不够3.处理大并发不够好】3.企业运行维护很多c/c++的项目,c/c++程序运行速度虽然很快,但

Go基础系列 01-Golang简介

1.什么是GolangGo(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。Go支持面向对象,而且具有真正的闭包(closures)和反射(reflection)等功能。2.谷歌为什么要创造Go语言1.计算机硬件技术更新频繁,性能提高很快。目前主流的编程语言发展明显落后于硬件,不能合理利用多核多CPU的优势提升软件系统性能。2.软件系统复杂度越来越高,维护成本越来越高,目前缺乏一个足够简洁高效的编程语言。【现有的编程语言:1.风格不统一⒉计算能力不够3.处理大并发不够好】3.企业运行维护很多c/c++的项目,c/c++程序运行速度虽然很快,但

【QCustomPlot】简介

说明使用QCustomPlot绘图库辅助开发时整理的学习笔记。目录说明1.库简介2.库的官网链接3.库的帮助文档4.库的下载地址5.库的版本号说明6.库的Git地址7.库的论坛地址8.库的BUG反馈地址9.库的邮件订阅地址1.库简介QCustomPlot是一个用于科学绘图的QT第三方库,可以用于常见的二维图像绘制,比如函数曲线、参数方程曲线、热力图、柱状图、箱线图、极坐标绘图等。该库由德国人EmanuelEichhammer开发,经历了多次版本迭代,支持跨平台,开源遵循GNUGPL协议,也可以联系作者获得该库的商业许可证(CommercialLicense)。2.库的官网链接QCustomPl

【QCustomPlot】简介

说明使用QCustomPlot绘图库辅助开发时整理的学习笔记。目录说明1.库简介2.库的官网链接3.库的帮助文档4.库的下载地址5.库的版本号说明6.库的Git地址7.库的论坛地址8.库的BUG反馈地址9.库的邮件订阅地址1.库简介QCustomPlot是一个用于科学绘图的QT第三方库,可以用于常见的二维图像绘制,比如函数曲线、参数方程曲线、热力图、柱状图、箱线图、极坐标绘图等。该库由德国人EmanuelEichhammer开发,经历了多次版本迭代,支持跨平台,开源遵循GNUGPL协议,也可以联系作者获得该库的商业许可证(CommercialLicense)。2.库的官网链接QCustomPl

02 Golang 基础简介

一、标识符标识符是指定义的具有特殊意义的词,例如变量、常量、函数名等等,任何一门语言中都对自己的标识符有特殊定义的规则。在Go语言中,标识符由字母数字和下划线组成,并且只能以字母和下划线开头,例如:数字、字母和下划线组成:123、abc_只能以字母和下划线开头:abc123、_sysVar、123abc标识符区分大小写:name、Name、NAME二、关键字和保留字关键字和保留字是指编程语言中预先定义好的具有特殊含义的标识符。关键字和保留字都不建议用作变量名,会引起混乱和冲突。1.GO中的关键字breakdefaultfuncinterfaceselectcasedefergomapstruc

02 Golang 基础简介

一、标识符标识符是指定义的具有特殊意义的词,例如变量、常量、函数名等等,任何一门语言中都对自己的标识符有特殊定义的规则。在Go语言中,标识符由字母数字和下划线组成,并且只能以字母和下划线开头,例如:数字、字母和下划线组成:123、abc_只能以字母和下划线开头:abc123、_sysVar、123abc标识符区分大小写:name、Name、NAME二、关键字和保留字关键字和保留字是指编程语言中预先定义好的具有特殊含义的标识符。关键字和保留字都不建议用作变量名,会引起混乱和冲突。1.GO中的关键字breakdefaultfuncinterfaceselectcasedefergomapstruc

Minio架构简介

简介Minio是一个go编写基于ApacheLicensev2.0开源协议的对象存储系统,是为海量数据存储、人工智能、大数据分析而设计,它完全兼容AmazonS3接口,十分符合存储大容量的非结构化数据从几十kb到最大5T不等。是一个小而美的开源分布式存储软件。特点简单、可靠:Minio采用简单可靠的集群方案,摒弃复杂的大规模的集群调度管理,减少风险与性能瓶颈,聚焦产品的核心功能,打造高可用的集群、灵活的扩展能力以及超过的性能。建立众多的中小规模、易管理的集群,支持跨数据中心将多个集群聚合成超大资源池,而非直接采用大规模、统一管理的分布式集群。功能完善:Minio支持云原生,能与Kubernet

Minio架构简介

简介Minio是一个go编写基于ApacheLicensev2.0开源协议的对象存储系统,是为海量数据存储、人工智能、大数据分析而设计,它完全兼容AmazonS3接口,十分符合存储大容量的非结构化数据从几十kb到最大5T不等。是一个小而美的开源分布式存储软件。特点简单、可靠:Minio采用简单可靠的集群方案,摒弃复杂的大规模的集群调度管理,减少风险与性能瓶颈,聚焦产品的核心功能,打造高可用的集群、灵活的扩展能力以及超过的性能。建立众多的中小规模、易管理的集群,支持跨数据中心将多个集群聚合成超大资源池,而非直接采用大规模、统一管理的分布式集群。功能完善:Minio支持云原生,能与Kubernet