Python分布式爬虫必学框架Scrapy打造搜索引擎
来源:互联网 发布:网络歌曲免费下载 编辑:程序博客网 时间:2024/05/17 08:20
Python分布式爬虫必学框架Scrapy打造搜索引擎
随笔背景:在很多时候,很多入门不久的朋友都会问我:我是从其他语言转到程序开发的,有没有一些基础性的资料给我们学习学习呢,你的框架感觉一下太大了,希望有个循序渐进的教程或者视频来学习就好了。对于学习有困难不知道如何提升自己可以加扣:1225462853进行交流得到帮助,获取学习资料.
CK21144-Python分布式爬虫必学框架Scrapy打造搜索引擎
下载地址:http://pan.baidu.com/s/1jI05TPW
技术选型
Scrapy VS requests+beautifulsoup
requests和bs都是库,Scrapy是框架。
scrapy框架可以加入requests和bs。
scrapy是基于twisted,性能是最大的优势。
scrapy方便扩展,提供了很多内置的功能。
scrapy内置的css和xpath selector非常方便,bs最大的缺点就是慢
爬虫能做什么?
搜索引擎----百度、google、垂直领域搜索引擎
推荐引擎----今日头条、一点资讯
机器学习的数据样本
数据分析(如金融数据分析)、舆情分析。
深度优先和广度优先
网站的树结构
深度优先算法和实现----递归
广度优先算法和实现----队列
爬虫去重策略
将访问过的url保存到数据库中。
将访问过的url保存到set中,只要o(1)【这是常数阶时间复杂度】的代价就可以查询url
100000000x2bytex50个字符/1024/1024/1024≈9G 一亿条数据,一条50字符
url经过md5等方法哈希后保存到set中(比较常用)
........
字符串编码
计算机只能识别数字,文本转换为数字才能处理。计算机中8个bit作为一个字节,所以一个字节能表示最大的数字就是255.
计算机是美国人发明的,所以一个字节可以表示所有字符了,所以ASCII(一个字节)编码就成为美国人标准编码。
但是ASCII处理中文明显是不够的,中文不止255个汉字,所以中国制定了GB2312编码,用两个字节表示一个汉字。GB2312还把ASCII包含进去了,同理,日文,韩文等等上百个国家为了解决这个问题就都发展了一套字节的编码,标准就越来越多,如果出现多种语言混合就一定会出现乱码。
于是unicode出现了,将所有语言统一到一套编码里。
ASCII和unicode编码:
(1)字母A用ASCII编码十进制65,二进制01000001
(2)汉字‘中’已超多ASCII编码的范围,用unicode编码是20013,二进制01001110 00101101
(3)A用unicode编码中只需要前面补0,二进制是 00000000 01000001
乱码问题解决可,但是如果内容全是英文,unicode编码比ASCII需要多一倍的存储空间,同时如果传输需要多一倍的传输。
所以出现了可变长的编码“utf-8”,把英文变长一个字节,汉字3个字节。特别生僻的变成4-6字节。如果传输大量的英文,utf-8作用就很明显。
==
- Python分布式爬虫必学框架Scrapy打造搜索引擎
- 【实战\聚焦Python分布式爬虫必学框架Scrapy 打造搜索引擎项目笔记】第3章 爬虫基础知识回顾
- 【实战\聚焦Python分布式爬虫必学框架Scrapy 打造搜索引擎项目笔记】第1章 课程介绍
- 【实战\聚焦Python分布式爬虫必学框架Scrapy 打造搜索引擎项目笔记】第4章 scrapy爬取知名技术文章网站(1)
- 【实战\聚焦Python分布式爬虫必学框架Scrapy 打造搜索引擎项目笔记】第4章 scrapy爬取知名技术文章网站(2)
- 【实战\聚焦Python分布式爬虫必学框架Scrapy 打造搜索引擎项目笔记】第5章 scrapy爬取知名问答网站(1)
- 【实战\聚焦Python分布式爬虫必学框架Scrapy 打造搜索引擎项目笔记】第5章 scrapy爬取知名问答网站(2)
- 【实战\聚焦Python分布式爬虫必学框架Scrapy 打造搜索引擎项目笔记】第2章 windows下搭建开发环境
- Python分布式爬虫打造搜索引擎Scrapy
- 架构师之路:Python分布式爬虫Scrapy打造搜索引擎
- Python分布式爬虫打造搜索引擎
- Python分布式爬虫打造搜索引擎完整版-基于Scrapy、Redis、elasticsearch和django打造一个完整的搜索引擎网站
- Python分布式爬虫打造搜索引擎完整版-基于Scrapy、Redis、elasticsearch和django打造一个完整的搜索引擎网站
- 搜索引擎–Python下开源爬虫(spider)框架scrapy的使用
- Python 爬虫框架 scrapy
- Python爬虫框架--Scrapy
- Python Scrapy爬虫框架
- python爬虫 -- scrapy框架
- 一级列表购物结合自定义View加减号的使用
- 图片加载image-loader
- 前端程序员应该知道的 15 个 jQuery 小技巧
- C语言-文件操作
- sizeof和strlen的区别
- Python分布式爬虫必学框架Scrapy打造搜索引擎
- 啦啦啦——终极模拟 fl+rg , tab+vp , pull+""
- loongson2f_龙芯灵珑9S2A一体机尝试usb和硬盘两种方式安装debian6成功篇
- C++ 中有符号数转化为无符号数
- 最长回文子串(Manacher's algorithm算法,复杂度O(n))
- com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "deptId"
- ffmpeg推荐tutorial---dranger函数框架图
- 【数据库】4函数
- 13_Spring_aspectj的aop其他操作