• 01 今日内容概要

  • 02 内容回顾:爬虫

  • 03 内容回顾:并发和网络

  • 04 Scrapy框架:起始请求定制

  • 05 Scrapy框架:深度和优先级

  • 06 Scrapy框架:内置代理

  • 07 Scrapy框架:自定义代理

  • 08 Scrapy框架:解析器

01 今日内容概要

1.1 starts_url;

1.2 下载中间件;

  • 代理

1.3 解析器

1.4 爬虫中间件

  • 深度
  • 优先级

02 内容回顾:爬虫

2.1 Scrapy依赖Twisted

2.2 Twisted是什么以及他和requests的区别?

  2.2.1 requests是一个Python实现的可以伪造浏览器发送HTTP请求的模块;——封装SOCKET发送请求;

  2.2.2 Twisted是基于事件循环的异步非阻塞循环网络框架; ——封装SOCKET发送请求,单线程完成并发请求;

  • 非阻塞:不等待;
  • 异步:回调;
  • 事件循环:不断地去轮询去检查状态;

2.3 HTTP请求的本质;

  • 请求头
  • 请求体

2.4 Scrapy

  • 创建project
  • 创建爬虫
  • 启动爬虫
  • response对象-text、body、request
  • xpath解析器——/    //   .//  //div[@x = "xx"]    //div/text()    //div/@href    .extract()     .extract_first()

2.5 pipeline持久化

  • pipeline的5个方法
  • 爬虫中:yield Item对象
  • yield Request对象
  • cookie

03 内容回顾:并发和网络

3.1 OSI七层模型,TCP/IP五层模型,

3.2 三次握手和四次挥手

3.3 路由器和交换机的区别?

3.4 ARP协议

3.5 DNS解析

3.6 HTTP和HTTPS

3.7 进程、线程和协程的区别

3.8 GIL锁

3.9 进程如何实现进程共享?

04 Scrapy框架:起始请求定制

4.1 start_urls;

4.2 什么是可迭代对象?

05 Scrapy框架:深度和优先级

5.1 深度

  • 最开始是0
  • 每次yield时候,会根据原来的请求中的depth + 1
  • 通过配置DEPTH_LIMIT 深度控制

5.2 优先级

  • 请求被下载的优先级——深度*配置 DEPTH_PRIORITY
  • 配置DEPTH_PROORITY

06 Scrapy框架:内置代理

6.1 Scrapy内置代理;

6.2 Scrapy自定义代理;

6.3 学习到一定程度,就要读源码;

07 Scrapy框架:自定义代理

7.1 自定义代理池

7.2 商业产品,阿布云

08 Scrapy框架:解析器

8.1 xpath解析器

8.2 css解析器

Python-S9-Day127-Scrapy爬虫框架2的更多相关文章

  1. Python之Scrapy爬虫框架安装及简单使用

    题记:早已听闻python爬虫框架的大名.近些天学习了下其中的Scrapy爬虫框架,将自己理解的跟大家分享.有表述不当之处,望大神们斧正. 一.初窥Scrapy Scrapy是一个为了爬取网站数据,提 ...

  2. Python爬虫教程-31-创建 Scrapy 爬虫框架项目

    本篇是介绍在 Anaconda 环境下,创建 Scrapy 爬虫框架项目的步骤,且介绍比较详细 Python爬虫教程-31-创建 Scrapy 爬虫框架项目 首先说一下,本篇是在 Anaconda 环 ...

  3. Python的两个爬虫框架PySpider与Scrapy安装

    Python的两个爬虫框架PySpider与Scrapy安装 win10安装pyspider: 最好以管理员身份运行CMD,不然可能会出现拒绝访问文件夹的情况! pyspider:pip instal ...

  4. scrapy爬虫框架教程(二)-- 爬取豆瓣电影TOP250

    scrapy爬虫框架教程(二)-- 爬取豆瓣电影TOP250 前言 经过上一篇教程我们已经大致了解了Scrapy的基本情况,并写了一个简单的小demo.这次我会以爬取豆瓣电影TOP250为例进一步为大 ...

  5. Scrapy爬虫框架(实战篇)【Scrapy框架对接Splash抓取javaScript动态渲染页面】

    (1).前言 动态页面:HTML文档中的部分是由客户端运行JS脚本生成的,即服务器生成部分HTML文档内容,其余的再由客户端生成 静态页面:整个HTML文档是在服务器端生成的,即服务器生成好了,再发送 ...

  6. Scrapy爬虫框架与常用命令

    07.08自我总结 一.Scrapy爬虫框架 大体框架 2个桥梁 二.常用命令 全局命令 startproject 语法:scrapy startproject <project_name> ...

  7. python3.7.1安装Scrapy爬虫框架

    python3.7.1安装Scrapy爬虫框架 环境:win7(64位), Python3.7.1(64位) 一.安装pyhthon 详见Python环境搭建:http://www.runoob.co ...

  8. 安装scrapy 爬虫框架

    安装scrapy 爬虫框架 个人根据学习需要,在Windows搭建scrapy爬虫框架,搭建过程种遇到个别问题,共享出来作为记录. 1.安装python 2.7 1.1下载 下载地址 1.2配置环境变 ...

  9. scrapy爬虫框架教程(二)-- 爬取豆瓣电影

    前言 经过上一篇教程我们已经大致了解了Scrapy的基本情况,并写了一个简单的小demo.这次我会以爬取豆瓣电影TOP250为例进一步为大家讲解一个完整爬虫的流程. 工具和环境 语言:python 2 ...

  10. Scrapy 爬虫框架学习笔记(未完,持续更新)

    Scrapy 爬虫框架 Scrapy 是一个用 Python 写的 Crawler Framework .它使用 Twisted 这个异步网络库来处理网络通信. Scrapy 框架的主要架构 根据它官 ...

随机推荐

  1. 解决windows7系统的快捷方式无法添加到任务栏

    #以下4条,进入cmd命令界面下逐个执行cmd /k reg add "HKEY_CLASSES_ROOT\lnkfile" /v IsShortcut /fcmd /k reg ...

  2. Python http

    # import httplib # http_client = None # http_client = httplib.HTTPConnection('localhost', 8080, time ...

  3. UVALive 4727 Jump(约瑟夫环,递推)

    分析: 如果问题是要求最后一个删除的数,重新编号为0到n-1,f[n]表示答案,那么f[n] = (f[n-1]+k)%n. 因为删掉下标k-1以后可以从下标k重新编号为0. 在这个问题只需要推出最后 ...

  4. MFC-[转]基于MFC的ActiveX控件开发

    作者:lidan | 出处:博客园 | 2012/3/13 16:10:34 | 阅读22次 ActiveX 控件是基于组件对象模型 (COM) 的可重用软件组件,广泛应用于桌面及Web应用中.在VC ...

  5. 题解 CF20A 【BerOS file system】

    对于此题,我的心近乎崩溃 这道题,注意点没有什么,相信大佬们是可以自己写出来的 我是蒟蒻,那我是怎么写出来的啊 好了,废话少说,开始进入正题 这道题,首先我想到的是字符串的 erase 函数,一边运行 ...

  6. github相关问题

    一.项目编译打包后生成的dist文件夹后:项目提交到github上dist文件提交不上去. 在.gitignore文件,删除一行 二.更改github的语言属性 .gitattributes文件:若项 ...

  7. SummerVocation_Learning--java的自动打包与解包

    Auto Boxing: 自动将基础类型转换成对象(JDK1.5之后支持) Auto UnBoxing:自动将对象转换成基础类型 如 Map中的put方法,如果要传入键值对<a,1>,&l ...

  8. 【思维题 最大权闭合子图】loj#6045. 「雅礼集训 2017 Day8」价

    又是经典模型的好题目 题目描述 人类智慧之神 zhangzj 最近有点胖,所以要减肥,他买了 NN 种减肥药,发现每种减肥药使用了若干种药材,总共正好有 NN 种不同的药材. 经过他的人脑实验,他发现 ...

  9. DDOS与DOS的区别

    0x01 在说之前,先看一些例子吧 还有众所周知的中美黑客大战,新闻我就不说了 0x02 什么是DOS DoS是Denial of Service的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻 ...

  10. Android Studio 安装与使用ADB wifi 无线调试

    首先,安装ADB WIFI File->Settings->Plugins 其次,用USB连接手机与电脑(并开启手机的调试模式) 任务栏若无提示,即可拔下USB线,开始无线调试 任务栏若是 ...