路飞学城—Python爬虫实战密训班 第三章 一.scrapy-redis插件实现简单分布式爬虫 scrapy-redis插件用于将scrapy和redis结合实现简单分布式爬虫: - 定义调度器 - 定义去重规则: 本质利用redis 集合元素不重复(被调度器使用) # 看源码request_seen函数 安装: pip3 install scrapy-redis 1. redis配置文件settings.py #from scrapy_redis import defaults # 查看默认…
路飞学城—Python爬虫实战密训班 第二章 一.Selenium基础 Selenium是一个第三方模块,可以完全模拟用户在浏览器上操作(相当于在浏览器上点点点). 1.安装 - pip install selenium 2.优缺点 - 无需查看和确定请求头请求体等数据细节,直接模拟人点击浏览器的行为 - 效率不高 3.依赖驱动: - Firefox https://github.com/mozilla/geckodriver/releases - Chrome http://chromedri…
Python的进程与线程--思维导图…
前言 原创文章,转载引用务必注明链接.水平有限,如有疏漏,欢迎指正. 之前看阮一峰的博客文章,介绍到路飞学城爬虫课程限免,看了眼内容还不错,就兴冲冲报了名,99块钱满足以下条件会返还并送书送视频. 缴纳99元保证金即可参与,只要完成3次作业和参与直播,提交学习笔记,就可以退还保证金,还可获得<Python全栈开发实战>及内部教材书籍,视频课程.定制文化衫等作为奖励.另外,还会有1对1的导师逐行批改你的代码.讲师3次直播答疑,还有班主任组队小伙伴共同学习. 好像打了一次广告,麻烦luffy的工作…
python,原意为蟒蛇,至于它的发展史,度娘应该比我讲述的更为专业/偷笑.这里我们要梳理的是整个学习的脉络,当然,今后的随笔也会从基础部分说起,希望能给进门python的小伙伴一些建议. 一.环境的安装 学习任何一门计算机语言,最重要的准备工作肯定是安装环境,没安装好环境,后面的也只是纸上谈兵,不会有多大的实质性进展,实践出真知!下面,就来简单的为大家介绍几款编写python的软件 1.python3.x 也称为python3,"3.x"代表着一个系列的版本,有3.2/3.5/3.6…
这次给大家带来的是4 幅思维导图,梳理了 Python 爬虫部分核心知识点:网络基础知识,Requests,BeautifulSoup,urllib 和 Scrapy 爬虫框架. 爬虫是一个非常有趣的主题,本文正是通过爬虫完成了课题所需数据的原始积累.第一次抓到数据时,感觉世界都明亮了呢~ 当然,由于日常项目要求不高,本文思维导图仅仅涉及了爬虫最核心基础的部分,但足够应对入门所需了~ P.S.由于平台对图片有一定程度的压缩,建议文末下载高清原图,放大后阅读. 制图工具:XMind 思维导图 1.…
并发编程 一.简答题 1,简述计算机操作系统的中断的作用 由于cpu本身一次只能执行一个程序,操作系统提供的中断机制使得cpu能够实现不断的在各个程序间进行切换,给人的感觉就是多个程序同时执行 为什么有中断? 现代操作系统一般都是采用基于时间片的优先级调度算法,把CPU的时间划分为很细粒度的时间片,一个任务每次只能时间这么多的时间,时间到了就必须交出使用权,即换其他的任务使用.这种要看操作系统的定时器机制了.那么时间片到之后,系统做了什么呢?这就要用到我们的中断了,时间片到了由定时器触发一个软中…
学习心得: 学习笔记: 在python中一个py文件就是一个模块 模块好处: 1.提高可维护性 2.可重用 3.避免函数名和变量名冲突 模块分为三种: 1.内置标准模块(标准库),查看所有自带和第三方模块总数的方法:help("modules"),带下划线的是系统调用的,我们用的主要是不带下划线的. 2.第三方开源模块,可通过pip install 模块名  联网安装 3.自定义模块 模块调用: import module from module import xx from xx.x…
学习心得: 通过这一章的作业,使我对正则表达式的使用直接提升了一个level,虽然作业完成的不怎么样,重复代码有点多,但是收获还是非常大的,有点找到写代码的感觉了,遗憾的是,这次作业交过,这次集训就结束了,后面视频中的作业和内容将不再做讲解,也没有作业批改,不论如何这次集训对于自己提升还是蛮多的,真的要感谢路飞这个学习平台. 学习笔记: 三元运算: 三元运算又称三目运算,是对简单的条件语句的简写. #简单条件语句 if 条件成立: val=1 else: val=2 #改成三元运算 val=1…
学习心得: 这章对编码的讲解超级赞,现在对于编码终于有一点认知了,但还没有大彻大悟,还需要更加细心的琢磨一下Alex博客和视频,以前真的是被编码折磨死了,因为编码的问题而浪费的时间很多很多,现在终于感觉看到了一点光明,哈哈! 笔记: print(bin(343)) #0b101010111   返回整数的二进制表示 python2默认支持的编码是ASCII python3默认支持的编码是UTF8 科学计数法: print(1.2395e8) #123950000.0 e8代表10的8次方,这个e…
学习体会: 在参加这次集训之前我自己学过一段时间的Python,看过老男孩的免费视频,自我感觉还行,老师写的代码基本上都能看懂,但是实际呢?....今天是集训第一次交作业的时间,突然发现看似简单升级需求,自己硬是一点思路没有,慢慢的想了想,有了点思路,但是发现想用列表时,却忘了有哪些方法,想到用文件存储用户信息,文件操作竟然也忘了,通过查找之前笔记和网上资料,最后终于磕磕绊绊把程序写完了,虽然写完了,但思路感觉还不太清晰,看来以后真的要多练了,光看不练真的不行. 另外之前也记过一些笔记,之前有记…
01-进程与程序的概念 并发:多进程和多线程 进程的概念:进程就是正在执行的过程,一个应用程序不是进程,只有应用程序启动以后才能说是进程,进程是一个抽象的概念,起源于操作系统 02-操作系统介绍 应用程序的调用都是由操作系统实现的,操作系统会管理多个应用程序,具体执行程序是由硬件CPU管理的 多个应用程序启动会先给操作系统请求,由操作系统的算法判断硬件是否执行 操作系统的两个核心功能 1.封装好硬件的复杂接口,给应用程序调用 2.管理应用程序上的启动的多个进程(分配给CPU资源) 03-操作系统…
# 数据结构: # goods = [ # {"name": "电脑", "price": 1999}, # {"name": "鼠标", "price": 10}, # {"name": "游艇", "price": 20}, # {"name": "美女", "price&q…
数据库 一.简答题 1.说说你所知道的MySQL数据库存储引擎,InnoDB存储引擎和MyISM存储引擎的区别? 1.InnoDB存储引擎(MySQL默认存储引擎),支持事务,其设计目标主要面向联机事务处理(OLTP)的应用.其特点是行锁设计.支持外键,并支持类似 Oracle 的非锁定读,即默认读取操作不会产生锁 2.MyISAM 存储引擎 不支持事务.表锁设计.支持全文索引,主要面向一些 OLAP 数 3.NDB 存储引擎 NDB 存储引擎是高可用. 高性能.高可扩展性的数据库集群系统,其面…
''' 数据结构: menu = { '北京':{ '海淀':{ '五道口':{ 'soho':{}, '网易':{}, 'google':{} }, '中关村':{ '爱奇艺':{}, '汽车之家':{}, 'youku':{}, }, '上地':{ '百度':{}, }, }, '昌平':{ '沙河':{ '老男孩':{}, '北航':{}, }, '天通苑':{}, '回龙观':{}, }, '朝阳':{}, '东城':{}, }, '上海':{ '闵行':{ "人民广场":{…
# 基础需求: # 让用户输入用户名密码 # 认证成功后显示欢迎信息 # 输错三次后退出程序 username = 'pandaboy' password = ' def Login(username,password): i=0 while i<3: U = input('Please input username>>>') P = input('Please input password>>>') if U == username and P == passw…
这个爬虫集训课第三章的作业讲得是Scrapy 课程主要是使用Scrapy + Redis实现分布式爬虫 惯例贴一下作业: Python爬虫可以使用Requests库来进行简单爬虫的编写,但是Requests的性能很差,一个请求耗时在2秒左右,毫无性能. 当然也可以使用gevent和asyncio来实现协程提升性能.但是要实现分布式爬虫的话,还是要用Scrapy, Scrapy内部是使用的 twisted实现的异步功能. 贴下作业目录. 下边记录下作业完成中遇到的问题 作业实现过程:1.windo…
本次爬虫集训的第二次作业是web微信. 先贴一下任务: 作业中使用到了Flask. Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 .Flask使用 BSD 授权. Flask也被称为 “microframework” ,因为它使用简单的核心,用 extension 增加其他功能.Flask没有默认使用的数据库.窗体验证工具. Flask和Django相比更小巧灵活. 贴一下完成的作业: 其中使用到j…
自学Python的时候看了不少老男孩的视频,一直欠老男孩一个会员,现在99元爬虫集训果断参与. 非常喜欢Alex和武Sir的课,技术能力超强,当然讲着讲着就开起车来也说明他俩开车的技术也超级强! 以上是闲扯,开始正式话题. -----------------------------------------------华丽的分割线-------------------------------------------------- 爬虫是什么 百度上是这样讲的. 网络爬虫(又被称为网页蜘蛛,网络机器…
面向过程:核心是过程二字,过程是解决问题的步骤,相当于设计一条流水线,是机械式的思维方式 优点:复杂的问题流程化,进而简单化 缺点:可扩展性差 面向对象:核心是对象二字,对象就是特征与技能的结合体. 优点:可扩展性强 缺点:编程复杂性高 应用场景:用户需求经常变化,互联网应用,游戏,企业内部应用. 类中的函数属性:是绑定给对象使用的,绑定到不同的对象是不同的绑定方法,对象调用绑定方法时,会把对象本身当做第一个参数传入,传给self 类里面的函数本质上是给对象使用的.…
转载:python之路-路飞学城-python-book [25.常用模块-logging模块详解] [26.常用模块-logging模块详解2] [27.常用模块-logging模块日志过滤和日志文件截取] 很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,logging的日志可以分为 debug(), info(), warning(), error()…
该项目结合了ATM模版和购物车需求,整个思维导图用Python代码实现,使用思维导图可以清晰明了的看清整个框架: 过程中,用到了Python的知识有Python常用模块,Python常用内置包,logger模块等等基础知识. 你可以在下面网盘(去掉混淆字博客园)下载到PDF高清版本,PNG高清版本和原版xmind文件的,欢迎提供指导意见. 链接: ht博tps://pa客n.bai园du.co园m/s/1gxLpc08Y8zNMl38qZP94zQ 密码: q1d4 ==============…
HTML部分 <!DOCTYPE html> <html lang="en"> <head> <!--head标签的主要作用:文档的头部主要描述了文档的各种属性和信息, 包括文档的标题.编码方式以及URL等信息, 这些信息大部分是用于提供索引的,辨认和识别其他方面的应用(移动端)--> <meta charset="UTF-8" http-equiv="refresh" content=&qu…
HTML div标签是块级标签,单独一行,可以作为其他标签的容器,没有特定含义 span是内联标签,可以作为文本内容的容器,没有特定含义 1. 查询一下对div和span标签的理解 不同的标签有自己含义,一般搭建网站的结构的时候需要用到标签的嵌套来完成不同的结构 规则 1.块元素可以包含内联元素或某些块元素,但内联元素却不能包含块元素,它只能包含其它的内联元素 2. 块级元素不能放在<p>里面 3. 有几个特殊的块级元素只能包含内嵌元素,不能再包含块级元素,这几个特殊的标签是h1.h2.h3.…
昨日内容回顾 1. 为什么要做前后端分离? - 前后端交给不同的人来编写,职责划分明确. - API (IOS,安卓,PC,微信小程序...) - vue.js等框架编写前端时,会比之前写jQuery更简单快捷. 2. 对于后端人员,主要为前端提供:API(接口) 以前的你的接口: http://127.0.0.1:8000/index/ http://127.0.0.1:8000/users/ http://127.0.0.1:8000/add_users/ http://127.0.0.1:…
一.前端 vue 部署 1.下载项目的vue 代码(路飞学城为例), wget https://files.cnblogs.com/files/pyyu/07-luffy_project_01.zip 解压缩 unzip -luffy_project_01.zip 2.配置 node环境 ①下载node 的代码包 wget https://nodejs.org/download/release/v8.6.0/node-v8.6.0-linux-x64.tar.gz ②解压缩 tar -zxvf…