<读书笔记>如何入门爬虫?
大部分爬虫框架都是
- 发送请求
- 获得页面
- 解析页面
- 下载内容
- 存储内容
定个宏伟目标
- 淘宝1000页
- 知乎
- 豆瓣
- ...
python基础
- list、dict:序列化爬取的内容
- 切片:分割爬取内容,获取需要的部分
- 条件判断:只找需要的,过滤掉没用的
- 循环和迭代:重复爬虫动作,直到爬取完成
- 文件读写操作:读取参数,将爬取的内容保存
- 编码常识:转码和解码
知识储备
- 网页基础知识:HTML、POST、GET、JS
- 分析语言:正则表达式、XPath、Beautifulsoup
辅助工具
- 开发者工具:F12
- 抓包工具:Fiddler 4
- 正则表达式测试:http://tool.chinaz.com/regex/
- 谷歌翻译:https://translate.google.cn/
- JSON解析:https://www.json.cn/
- PyCharm(Windows)
- Eclipse for Python(Linux)
各种模块
- urllib
- urllib2
- requests
- scrapy
- selenium
- phantomJS
反爬虫策略
- 打码平台
- PIL(图像处理标准库)
- OpenCV((开源)发行的跨平台计算机视觉库)
- Pybrain(号称最好用的Python神经网络库)
- 。。。
数据库
- mysql
- mongodb
- sqlite(scrapy自带的)
- redis(分布式需要)
数据分析
- numpy:数据分析,类似matlab
- pandas:基于numpy的数据分析模块
进阶技术
- 多线程
- 分布式
Scrapy + MongoDB + Redis 分布式爬虫系统
a). Redis 用来存储要爬取的网页队列,也就是任务队列
b). MongoDB 用来存储爬取的内容结果。
c) . Scrapy 里放爬虫crawler , 分别爬取不同的网页内容。
学以致用
- 多练习,多使用
- 编程是最容易获得的超能力。你还在等什么?
<读书笔记>如何入门爬虫?的更多相关文章
- 读书笔记汇总 --- 用Python写网络爬虫
本系列记录并分享:学习利用Python写网络爬虫的过程. 书目信息 Link 书名: 用Python写网络爬虫 作者: [澳]理查德 劳森(Richard Lawson) 原版名称: web scra ...
- 第三章 Git的入门 - 读书笔记
Android驱动月考3 第三章 Git的入门 - 读书笔记 对于Github,这是全世界最大的开源平台,你可以把你做的项目在这里开源,把你发现的一些新技术在这里开源,向全世界的开发者们分享,大家都彼 ...
- 《深入理解bootstrap》读书笔记:第一章 入门准备
一.bootstrap框架简介 Bootstrap是最流行的前端开发框架. 什么是框架:开发过程的半成品. bootstrap具有以下重要特性: (1)完整的CSS样式插件 (2)丰富的预定义样式表 ...
- Unity Shader入门精要读书笔记(一)序章
本系列的博文是笔者读<Unity Shader入门精要>的读书笔记,这本书的章节框架是: 第一章:着手准备. 第二章:GPU流水线. 第三章:Shader基本语法. 第四章:Shader数 ...
- 《Github入门与实践》读书笔记 蟲咋先生的追求之旅(上)
<Github入门与实践>作者: [日] 大塚弘记 译者:支鹏浩/刘斌 简介 本书从Git的基本知识和操作方法入手,详细介绍了GitHub的各种功能,GitHub与其他工具或服务的协作 ...
- Unity Shader入门精要读书笔记(二)UnityShader概述
第三章<UnityShader概述>的读书笔记: 1.Unity Shader模板提供了几种选择: 标准光照模型(新添加的基于物理的渲染方法) 不含光照的基本的顶点.片元着色器 屏幕后处理 ...
- 【读书笔记与思考】《python数据分析与挖掘实战》-张良均
[读书笔记与思考]<python数据分析与挖掘实战>-张良均 最近看一些机器学习相关书籍,主要是为了拓宽视野.在阅读这本书前最吸引我的地方是实战篇,我通读全书后给我印象最深的还是实战篇.基 ...
- 读书笔记--大规模web服务开发技术
总评 这本书是日本一个叫hatena的大型网站的CTO写的,通过hatena网站从小到大的演进来反应一个web系统从小到大过程中的各种系统和技术架构变迁,比较接地气. 书的内容 ...
- C#温故知新:《C#图解教程》读书笔记系列
一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...
随机推荐
- php开发面试题---游戏面向对象设计与分析实例
php开发面试题---游戏面向对象设计与分析实例 一.总结 一句话总结: 不要光空想,多看几个实例就知道自己的游戏该怎么设计了 根据实例去理解面向对象编程的的六大原则 1.英雄种类分别有:战士.法师. ...
- 二叉树总结及部分Lintcode题目分析 1
1. 遍历问题 Preorder / Inorder / Postorder preorder: root left right inorder: left root right postorder: ...
- 前端(二十)—— vue介绍:引用vue、vue实例、实例生命周期钩子
vue 一.认识Vue 定义:一个构建数据驱动的 web 界面的渐进式框架 优点: 1.可以完全通过客户端浏览器渲染页面,服务器端只提供数据 2.方便构建单页面应用程序(SPA) 3.数据驱动 =&g ...
- 一份完整的 Java 成神路线图,值得收藏!
Java,是现阶段中国互联网公司中,覆盖度最广的研发语言. 有不少朋友问,如何深入学习Java后端技术栈,今天分享一个,互联网牛人整理出来的完整的Java成神路线图. 一:常见模式与工具 学习Java ...
- C# WinForm 访问webService天气预报
1.直接添加服务引用 右键引用 -->添加服务引用 这样的好处是可以直接当成类用 简单 麻烦的地方就是地址是死的 代码如下: private void button1_Click(object ...
- hdu6325 /// 上凸包
题目大意: 给定n 为n个点 给定n个点的坐标 两个点(xi,yi) (xj,yj)之间的花费是 xi*yj-yi*xj (可能为负数) 要求从点1经过若干个点到点n最小花费的路径 且路径要按x轴方向 ...
- nth_element函数
使用方法:nth_element(start, start+n, end) 使第n大元素处于第n位置(从0开始,其位置是下标为n的元素),并且比这个元素小的元素都排在这个元素之前,比这个元素大的元素都 ...
- usb-host与外设通信(二)
本文是接着上一篇的的usb-host与外设通信(一)接着写的 3.枚举设备 当你的程序运行时,如果应用程序对当前连接的USB设备都感兴趣的,程序可以枚举所以当前的设备.使用getDeviceList( ...
- ES6数组Api扩充
1. Array.of( ); ----将一组数据转换成一个数组: const num=201314; const a=Array.of(num); console.log(a); //数组 ...
- windows7远程连接服务器出现身份验证错误,又找不到加密Oracle修正
把以下内容复制到文本中, Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Cur ...