爬虫-day01-基础知识
'''
爬虫的构成
下载器: 抓取页面
urllib
equests
selenium + webdriver
解析器: 解释并提取页面元素
BeautifulSoup4
PyQuery
Xpath
Regular Expression
调度器:协调完成全部抓取任务
进程
线程
协程
分布式抓取
处理器:
数据清洗
数据入库
图片上传
'''
# 开始一个爬虫
'''
1、确定一个抓取目标
2、页面分析
① pyquery
② xpath
③ json
④ regexp
3、流程规则
4、存储规则
'''
'''
超文本传输协议 HTTP
统一资源定位符 URL
http://example.com:80/123/456/789?x=0&y=abc#part1
组成:
scheme: http、https
hostname: example.com
port: 80
path:/123/456/789
query: ?x=0&y=abc
fragment: #part1
'''
'''
Request
Method(方法) 作用
GET 请求一个指定资源的表示形式,使用GET请求应该只被用于获取数据
HEAD 请求一个月GET请求响应相同的响应,但没有响应体
POST 用于将实体提交到指定的资源,通常导致状态或服务器上的副作用更改
PUT 用于请求有效载荷替换目标资源的左右当前表示
DELETE 删除指定的资源
OPTIONS 用于描述目标资源的通信选型
CONNNET 建立目标资源标识的服务器隧道,主要用于做代理服务器
TRACE 执行一个消息回环测试,主要用于诊断
PATCH 用于对资源应用部分修改
'''
'''
Header
Header Names 描述
Accept text/plain 告诉服务器接受什么介质类型,/ 表示任何类型,type/* 表示该类型下的所有子类
Accept-Charset utf-8 浏览器申明自己接收的字符集
Accept-Encoding gzip 浏览器申明自己接收的编码方法,通常指定压缩方法
Accept-language zh-CN en-US 浏览器申明自己接收的语言
Cache-Control true,max-age 设置是否允许被缓存,缓存有效时间,也可以通过 no-cache 指令来禁止缓存
connection keep-alive 又称持久连接、连接重用
content-length 当内容将要被传输到浏览器时,服务器可以通过该头部告知浏览器将要传送文件的大小(bytes)
content-Type 指定响应的内容类型,浏览器将会依据该参数决定如何对文档进行解析,默认 text/html
User-Agent 浏览器标识
Cookie cookie信息
Referer 当前页面是通过此来源页面里的链接进入的
'''
爬虫-day01-基础知识的更多相关文章
- c++学习day01基础知识学习
一.代码示例解析: #include <iostream> int main() { using namespace std; cout << "come up an ...
- 网络爬虫: 从allitebooks.com抓取书籍信息并从amazon.com抓取价格(1): 基础知识Beautiful Soup
开始学习网络数据挖掘方面的知识,首先从Beautiful Soup入手(Beautiful Soup是一个Python库,功能是从HTML和XML中解析数据),打算以三篇博文纪录学习Beautiful ...
- python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。
本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...
- Python爬虫(1):基础知识
爬虫基础知识 一.什么是爬虫? 向网站发起请求,获取资源后分析并提取有用数据的程序. 二.爬虫的基本流程 1.发起请求 2.获取内容 3.解析内容 4.保存数据 三.Request和Response ...
- python 爬虫与数据可视化--python基础知识
摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...
- python 爬虫基础知识一
网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本. 网络爬虫必备知识点 1. Python基础知识2. P ...
- 爬虫基础---HTTP协议理解、网页的基础知识、爬虫的基本原理
一.HTTP协议的理解 URL和URI 在学习HTTP之前我们需要了解一下URL.URI(精确的说明某资源的位置以及如果去访问它) URL:Universal Resource Locator 统一资 ...
- 0.Python 爬虫之Scrapy入门实践指南(Scrapy基础知识)
目录 0.0.Scrapy基础 0.1.Scrapy 框架图 0.2.Scrapy主要包括了以下组件: 0.3.Scrapy简单示例如下: 0.4.Scrapy运行流程如下: 0.5.还有什么? 0. ...
- 学 Java 网络爬虫,需要哪些基础知识?
说起网络爬虫,大家想起的估计都是 Python ,诚然爬虫已经是 Python 的代名词之一,相比 Java 来说就要逊色不少.有不少人都不知道 Java 可以做网络爬虫,其实 Java 也能做网络爬 ...
- 从0开始学爬虫4之requests基础知识
从0开始学爬虫4之requests基础知识 安装requestspip install requests get请求:可以用浏览器直接访问请求可以携带参数,但是又长度限制请求参数直接放在URL后面 P ...
随机推荐
- java去除表达符号的正则表达式
java 去标点符号正则表达式 博客分类: 小功能 正则表达式标点符号 public static void main(String[] args) {String s = "哈哈!@#W ...
- Linux(CentOS 7)命令行模式安装VMware Tools 详解
本篇文章主要介绍了如何在Linux(CentOS 7)命令行模式安装VMware Tools,具有一定的参考价值,感兴趣的小伙伴们可以参考一下. 本例中为在Linux(以CentOS 7为例)安装VM ...
- 『TensorFlow』使用集合collection控制variables
Variable Tensorflow使用Variable类表达.更新.存储模型参数. Variable是在可变更的,具有保持性的内存句柄,存储着Tensor 在整个session运行之前,图中的全部 ...
- MVC实战之排球计分(六)—— 使用EF框架,创建Controller,生成数据库。
在上篇博客我们写到,此软件的数据库连接我们使用的是EF框架,code first模式下, 通过模型类,在创建controller的时候直接生成数据库,完成数据库的连接,与操作. 在使用EF框架之前,我 ...
- Python查看与安装
官网下载最新的版本 https://www.python.org mac系统,最近版本的os系统默认自带python 2.7,可以通过在终端输入python或python -V zhanyunjiu ...
- PFM 图片格式
PFM 图片格式 参考: https://linux.die.net/man/5/pfm 1. 描述 本文档描述了Netpbm转换器pamtopfm(1)和pfmtopam(1)所理解的PFM图 ...
- teamview修改id
怎么修改 TeamViewer ID 呢?按照下列的操作步骤,就能很简单的改变TeamViewer的id哦!1. 开始 > 运行,录入%appdata%,删除TeamViewer的文件夹: ...
- python day 25--正则表达式
一.字符组 1.[0-9]表示匹配0-9中的数字 2.[a-z]表示匹配a-z之间的字母 3.[A-Z]表示匹配大写的字母 4.[0-9a-zA-Z]匹配所有字母数字 二.元字符 1.\d 匹配任意数 ...
- 用rz、sz命令在Xshell传输文件
用rz.sz命令在Xshell传输文件 2014-03-27 14:38:17 标签:用rz.sz命令在Xshell传输文件 Xshell很好用,然后有时候想在windows和linux之间上传或下载 ...
- 关于CMD的一些小技巧
1.cd命令无法切换路径怎么办? a)切换盘符不好使