• 01 今日内容概要

  • 02 内容回顾:爬虫

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

  • 04 Web微信之获取联系人列表

  • 05 Web微信之发送消息

  • 06 为什么request.POST拿不到数据

  • 07 到底使用json还是data?

  • 08 Web微信之接收消息

  • 09 上述内容总结

  • 10 scrapy安装

  • 11 scrapy基本命令

  • 12 scrapy示例:获取抽屉新闻

  • 13 scrapy创建下载任务

  • 14 今日作业

01 今日内容概要

1.1 Web微信;

  1.1.1 获取联系人列表;

  1.1.2 发送消息;

1.2 爬虫框架之scrapy(用的多,神箭手工具);

  12.1 大而全的Web框架;类比于Django或Flask;

02 内容回顾:爬虫

2.1 第一部分:爬虫

  2.1.1 requests和bs4基础

  2.1.2  web知识

  • 请求和请求
  • 携带常见请求头——User-Agent\referer\host\content-type\cookie
  • csrf_token——两个tab打开的同时,其中一个tab诱导我们对另外一个tab提交数据;

  2.1.3 分析http请求——Chrome浏览器、FireFox浏览器;

  2.1.4 爬虫的套路-汽车之家、抽屉、抽屉登录、github、拉钩、Web微信;

  • XML-数据交换;配置文件;

03 内容回顾:网络和并发编程

3.1 OSI七层模型

3.2 三次握手和四次挥手

3.3 TCP和UDP的区别

3.4 路由器和交换机的区别

3.5 ARP协议

3.6 DNS解析

3.7 HTTP和HTTPS

3.8 进程、线程和携程

3.9 GIL锁

3.10 进程如何进程共享

04 Web微信之获取联系人列表

05 Web微信之发送消息

06 为什么request.POST拿不到数据

07 到底使用json还是data?

08 Web微信之接收消息

09 上述内容总结

9.1 Goal:锻炼分析HTTP请求的能力;

10 scrapy安装

10.1 在爬虫领域,是一个“大而全”的爬虫组件,涵盖了requests、bs4等组件的功能;

10.2 scrapy框架的安装

  • windows——下载Twisted文件;pip3 install pywin32 ; pip3 install wheel
  • Linux|Unix下的安装pip3 install scrapy;

11 scrapy基本命令

11.1 Django创建Django项目

  • 创建项目django-admin startproject HelloDjango
  • cd HelloDjango
  • 创建应用python manage.py startapp app01
  • python manage.py startapp app02
  • 启动项目python manage.py runserver

11.2 Scrapy的基本命令;

  • 创建项目 scrapy startproject HelloScrapy
  • cd HelloScrapy
  • scrapy genspider baidu baidu.com
  • scrapy genspider jd jd.com
  • scrapy crawl baidu

11.3 Scrapy的目录结构;

  • scrapy.cfg#主配置文件;
  • 项目名称HelloSrapy
  • __init__.py
  • items.py#定义爬取的数据结构
  • middlewares.py#定义爬取时候的中间件
  • pipelines.py#定义数据管道
  • settings.py#配置文件;
  • spiders目录#存放spiders的文件夹;
  • __init__.py

12 scrapy示例:获取抽屉新闻

13 scrapy创建下载任务

14 今日作业

14.1 小结;

  • HTML解析:xpath
  • 再次发起请求:yield Request对象;

Python-S9-Day125-Web微信&爬虫框架之scrapy的更多相关文章

  1. 06 爬虫框架:scrapy

    爬虫框架:scrapy   一 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速.简单.可扩展的方式从网站中提取所需的数据.但目前S ...

  2. 九、爬虫框架之Scrapy

    爬虫框架之Scrapy 一.介绍 二.安装 三.命令行工具 四.项目结构以及爬虫应用简介 五.Spiders 六.Selectors 七.Items 八.Item Pipelin 九. Dowload ...

  3. 洗礼灵魂,修炼python(72)--爬虫篇—爬虫框架:Scrapy

    题外话: 前面学了那么多,相信你已经对python很了解了,对爬虫也很有见解了,然后本来的计划是这样的:(请忽略编号和日期,这个是不定数,我在更博会随时改的) 上面截图的是我的草稿 然后当我开始写博文 ...

  4. 爬虫框架之Scrapy

    一.介绍 二.安装 三.命令行工具 四.项目结构以及爬虫应用简介 五.Spiders 六.Selectors 七.Items 八.Item Pipelin 九. Dowloader Middeware ...

  5. 基于Python + requests 的web接口自动化测试框架

    之前采用JMeter进行接口测试,每次给带新人进行培训比较麻烦,干脆用python实现,将代码和用例分离,易于维护. 项目背景 公司的软件采用B/S架构,进行数据存储.分析.管理 工具选择 pytho ...

  6. 爬虫框架:scrapy

    一 介绍 Scrapy一个开源和协作的框架,其最初是为了页面抓取 (更确切来说, 网络抓取 )所设计的,使用它可以以快速.简单.可扩展的方式从网站中提取所需的数据.但目前Scrapy的用途十分广泛,可 ...

  7. 爬虫框架之Scrapy(一)

    scrapy简介 scrapy是一个用python实现为了爬取网站数据,提取结构性数据而编写的应用框架,功能非常的强大. scrapy常应用在包括数据挖掘,信息处理或者储存历史数据的一系列程序中. s ...

  8. 爬虫框架之Scrapy(四 ImagePipeline)

    ImagePipeline 使用scrapy框架我们除了要下载文本,还有可能需要下载图片,scrapy提供了ImagePipeline来进行图片的下载. ImagePipeline还支持以下特别的功能 ...

  9. 爬虫框架之Scrapy(三 CrawlSpider)

    如何爬取一个网站的全站数据? 可以使用Scrapy中基于Spider的递归方式进行爬取(Request模块回调parse方法) 还有一种更高效的方法,就是基于CrawlSpider的自动爬取实现 简介 ...

随机推荐

  1. SqlServer Alwayson 搭建排错记录(一)

    这几天搭建alwayson,碰到一堆问题,解决起来花了不少时间,特此记下几个有代表性的,以免以后再碰到做重复功. 一.创建可用性组 使用SSMS的创建可用性组向导,添加了一个主副本node1,一个辅助 ...

  2. sql server 2016新特性 查询存储(Query Store)的性能影响

    前段时间给客户处理性能问题,遇到一个新问题, 客户的架构用的是 alwayson ,并且硬件用的是4路96核心,内存1T ,全固态闪存盘,sql server 2016 . 问题  描述 客户经常出现 ...

  3. k8s之configmap配置中心

    记录在石墨笔记中,懒得再粘贴了,大家直接移步下面地址 https://shimo.im/docs/ktNM72QPweEEkcWg/

  4. pta 编程题13 File Transfer

    其它pta数据结构编程题请参见:pta 这道题考察的是union-find并查集. 开始把数组中每个元素初始化为-1,代表没有父节点.为了使树更加平衡,可以让每一个连通分量的树根的负值代表这个连通分量 ...

  5. 【BZOJ1925】 [SDOI2010] 地精部落(带有一堆性质的动态规划)

    点此看题面 大致题意: 问你有多少长度为\(n\)的数列,它当中每个数字要么比旁边两个数字都小,要么比旁边两个数字都大. 性质 这题应该比较显然是一道动态规划题,但刚看到这题时我却无从下手. 其实,了 ...

  6. 用virtualenv构建一个新的python环境,这个新的环境在这个创建的文件夹下

    http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/00143271210830032 ...

  7. python_53_函数补充

    def test1(x,y=2): print(x,y) test1(1) test1(1,3) test1(1,y=4) #默认参数特点:调用函数的时候,默认参数非必须传递,默认参数放在后边 #用途 ...

  8. java算法面试题:递归算法题1

    递归算法题1 一个整数,大于0,不用循环和本地变量,按照n,2n,4n,8n的顺序递增,当值大于5000时,把值按照指定顺序输出来.例:n=1237则输出为:1237,2474,4948,9896,9 ...

  9. 51nod——2478 小b接水(预处理 思维)

    我本来想把每个谷都处理了,想了下觉得不好办.后来看其他人写的是处理每个位置,把每个位置可以接的水累加起来.整挺好. #include <bits/stdc++.h> using names ...

  10. django 图片上传与显示

    由于图片上传的需要,学习了一波上传 1. 上传 前端代码 <form action="写上相应的定向位置" method="post" enctype=& ...