1 robots协议 Robots协议(也称为爬虫协议.机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过Robots协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取. 如: 淘宝网:https://www.taobao.com/robots.txt User-agent: Baiduspider Allow: /article Allow: /oshtml Disallow: /product/ Disallow: / User-Age…
1 初级爬虫 (1)Web前端的知识:HTML, CSS, JavaScript, DOM, DHTML, Ajax, jQuery,json等: (2)正则表达式,能提取正常一般网页中想要的信息,比如某些特殊的文字,链接信息,知道什么是懒惰,什么是贪婪型的正则: (3)会使用re, BeautifulSoup,XPath等获取一些DOM结构中的节点信息: (4)知道什么是深度优先,广度优先的抓取算法,及实践中的使用规则: (5)能分析简单网站的结构,会使用urllib,urllib2或requ…
一.正则表达式 二.深度和广度优先                                三.爬虫去重策略…
1.六种数据类型 5种基础的:Undefined,Null,Boolean,Number,String(其中Undefined派生自Null) 1种复杂的:Object(本质是一组无序键值对) 2.字符串转数字 Number(str):先求值再转换(先valueOf再toString都不行就是NaN),一般与我们的预期结果不一样,比如Number(”)=Number(false)=Number(null)=0而var x;Number(x)=NaN...所以一般都用下面两种方式 parseInt…
1 urllib概述 1.1 urllib库中的模块类型 urllib是python内置的http请求库 其提供了如下功能: (1)error 异常处理模块 (2)parse url解析模块 (3)request 请求模块 (4)robotparser robots.txt解析模块 1.2 模块的引用方式 以下应用引用urllib库中的模块时均以 parse模块 为例 (1)引用方式一(正确) import urllib from urllib import parse (2)引用方式二(正确)…
1 数据类型 网页中的数据类型可分为结构化数据.半结构化数据.非结构化数据三种 1.1 结构化数据 常见的是MySQL,表现为二维形式的数据 1.2 半结构化数据 是结构化数据的一种形式,并不符合关系型数据库或其他数据表的形式关联起来的数据模型结构,但包含相关标记,用来分隔语义元素以及对记录和字段进行分层.因此,它也被称为自描述的结构.常见的半结构数据有HTML,XML和JSON等,实际上是以树或者图的结构来存储的. <person> <name>A</name> &l…
1 深度优先算法 2 广度/宽度优先策略 3 完全二叉树遍历结果 深度优先遍历的结果:[1, 3, 5, 7, 9, 4, 12, 11, 2, 6, 14, 13, 8, 10] 广度优先遍历的结果:[1, 3, 2, 5, 4, 6, 8, 7, 9, 12, 11, 14, 13, 10] 4 实践中怎么来组合爬取策略 (1)一般来说,重要的网页距离入口站点的距离很近: (2)广度/宽度优先有利于多爬虫并行进行合作: (3)可以考虑将深度与广度/宽度相结合的方式来实现抓取的策略:优先考虑广…
1.六种数据类型 5种基础的:Undefined,Null,Boolean,Number,String(其中Undefined派生自Null) 1种复杂的:Object(本质是一组无序键值对) 2.字符串转数字 Number(str):先求值再转换(先valueOf再toString都不行就是NaN),一般与我们的预期结果不一样,比如Number(”)=Number(false)=Number(null)=0而var x;Number(x)=NaN...所以一般都用下面两种方式 parseInt…
1. 开启Beautiful Soup 之旅 在这里先分享官方文档链接,不过内容是有些多,也不够条理,在此本文章做一下整理方便大家参考. 官方文档 2. 创建 Beautiful Soup 对象 首先必须要导入 bs4 库 from bs4 import BeautifulSoup 1 from bs4 import BeautifulSoup 我们创建一个字符串,后面的例子我们便会用它来演示 Python html = """ <html><head>…
1:全局变量与局部变量 全局:可以从父进程传递给子进程的变量,如:环境变量. 局部:只能在特定的子Shell中使用的变量. 局部变量变全局:使用 “export 局部” 指令将创建的局部变量导出到环境,成为全局变量. 2:查看环境变量 env printenv 3:查看所有变量及其值 set 4:打印某个变量 echo $变量 5:删除变量 unset 变量名 6:shell选项的开启与关闭 set -o 选项 :开启选项 set +o 选项 :关闭选项 7:转义 \元字符 :将元字符作为一个普…