C++爬虫原理(九):Https和Http的区别

C++爬虫原理(九):Https和Http的区别
Https : (Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的...

C++爬虫原理(八):正则知识和Boost在VS中的应用

C++爬虫原理(八):正则知识和Boost在VS中的应用
一、正则的知识?什么是正则?正则是干什么用的?正则的应用? 请参考以下教程:正则表达式30分钟入门教程 二、正则表达式中一些常见的元字符 正则表达式 (总结 by: cplusplus.me ): ^ : 表示 行的开始,^放在[]中表示排除的意思 $ : 表示 行的结束 \b : 表示 单词定界符 \B : 表示 不能是一个完整的单词 [] : 表示 方括号内只能匹配一个字符。eg: [Tt]忽略大小写 | : 表示 或。eg: T|t忽略大小写。 注:...

C++爬虫原理(七):布隆过滤器和暴雪字符串哈希的思考

C++爬虫原理(七):布隆过滤器和暴雪字符串哈希的思考
结合布隆过滤器按位存储的思想,和暴雪字符串哈希算法的思想,写出适合所写程序的哈希。(主要参考,布隆过滤器) 如下: 一、首先申请约为1亿比特位的空间 = 1亿/8 字节 = 13MB,8次哈希,所以需要 8*13MB = 100MB的内存。 这里我为什么要取接近1亿的质数为哈希表大小呢?大约测试了8-9个垂直行业站点,数据量随机(几十万到千万),URL相似度存在高度相似等情况,这里有个奇怪的现象,在哈希表大小为1亿...

C++爬虫原理(五):编码和解码URL_UTF-8

C++爬虫原理(五):编码和解码URL_UTF-8
C++爬虫原理(五):编码和解码URL,UTF-8方式,网上大多数是ansi方式的编码,即:UTF-8,UrlEncode编码/UrlDecode解码: 一个CString版的代码如下(项目需要随手写了一个): CString CTestDlg::URLEncode(CString str) { int len = MultiByteToWideChar(CP_ACP,0,str.GetBuffer(0),-1,NULL,0); str.ReleaseBuffer(); wchar_t *unicode = new wchar_t[len]; MultiByteToWideChar(CP_ACP,0,str.GetBuf...

C++爬虫原理(四):组包Chunked网页数据

C++爬虫原理(四):组包Chunked网页数据
One、about  HTTP chunked+gzip Chunked transfer encoding allows a server to maintain an HTTP persistent connection for dynamically generated content. In this case the HTTP Content-Length header cannot be used to delimit the content and the next HTTP request/response, as the content size is as yet unknown. Chunked encoding has the benefit that it is not necessary to generate ...

C++爬虫原理(三):解压Gzip网页数据

C++爬虫原理(三):解压Gzip网页数据
Http 1.1中支持Gzip压缩,可以非常极大的节约带宽,Gzip解压不同与zip压缩,不要使用uncompress了。一开始搞错了,用的开源zip库的,闭门造车了。。。。 #ifndef GZIP_H #define GZIP_H #include "zlib/zlib.h" /* Compress gzip data */ /* data 原数据 ndata 原数据长度 zdata 压缩后数据 nzdata 压缩后长度 */ int gzcompress(Bytef *data, uLong ndata, Bytef *zdata, uLon...

C++爬虫原理(二):读取URL策略

C++爬虫原理(二):读取URL策略
C++爬虫原理:C++爬虫原理(一):爬虫简介 C++爬虫原理:C++爬虫原理(二):读取URL策略 以下介绍读取URL的策略,也就是网页有限抓取方式: 网页的抓取策略可以分为深度优先、广度优先和最佳优先三种。深度优先在很多情况下会导致爬虫的陷入(trapped)问题,目前常见的是广度优先和最佳优先方法。在这里,聚焦爬虫推荐使用广度优先搜索,定向覆盖。 广度优先搜索 广度优先搜索策略是指在抓取过程中,在完成当前...

C++爬虫原理(一):爬虫简介

C++爬虫原理(一):爬虫简介
爬虫简介: 爬虫的主要目的是将互联网上的网页下载到本地,然后通过一系列的数据分析算法等提取有效信息(这也就类似与数据分析)。然而关于c++的爬虫很少(据说python做爬虫有很大的优势,所以 本人也一直努力在学),这几篇就总结一下自己对c++爬虫的理解,沉淀自己的思想。其实所有的爬虫原理大概都是一样的,然才识疏浅,或许有许多自己不知道。 可能理解有误,摸索前进中,希望大牛支出纰漏之处... 爬虫...

Mysql大数据处理与优化

Mysql大数据处理与优化
Mysql大数据处理与优化:遇到一个问题,服务器端是Mysql数据库。某张表中有将近2000W条记录,现在表中有大量冗余数据需要剔除掉(Version update, Data garbage),如果处理这2000W条记录呢? 一、一次性取出数据(Select * from table)肯定不行,数据量太大会导致内存溢出。于是就分批取出数据。 [cpp]select * from table where...limit pos,size [/cpp] pos为记录开始的index,size为多少条记录。 思考:...
Copyright © C/C++程序员之家 保留所有权利.   Theme  Ality 浙ICP备15011757号-3

用户登录