python基础
文章平均质量分 91
寂地沉
这个作者很懒,什么都没留下…
展开
-
Python开发【第二篇】:初识Python
Python简介 Python前世今生python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。 最新的TIOBE排行榜,Python赶超PHP占据第五!!!由上图可见,Python整体呈上升趋势,反映出Python应用越来越广泛并且也逐渐得到业内的认可!!!P...原创 2018-04-21 14:20:56 · 207 阅读 · 0 评论 -
Python开发【第十五篇】:Web框架之Tornado
概述Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本。这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过为了能有效利用非阻塞式服务器环境,这个 Web 框架还包含了一些相关的有用工具 和优化。Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的框架)有着明显的区别:它是非阻塞式服务器...原创 2018-04-21 14:21:26 · 357 阅读 · 0 评论 -
Python开发【第十六篇】:AJAX全套
概述对于WEB应用程序:用户浏览器发送请求,服务器接收并处理请求,然后返回结果,往往返回就是字符串(HTML),浏览器将字符串(HTML)渲染并显示浏览器上。1、传统的Web应用一个简单操作需要重新加载全局数据2、AJAXAJAX,Asynchronous JavaScript and XML (异步的JavaScript和XML),一种创建交互式网页应用的网页开发技术方案。异步的JavaScri...原创 2018-04-21 14:21:29 · 443 阅读 · 0 评论 -
Python开发【第十七篇】:MySQL(一)
一、概述1、什么是数据库 ? 答:数据的仓库,如:在ATM的示例中我们创建了一个 db 目录,称其为数据库2、什么是 MySQL、Oracle、SQLite、Access、MS SQL Server等 ? 答:他们均是一个软件,都有两个主要的功能:a. 将数据保存到文件或内存b. 接收特定的命令,然后对文件进行相应的操作PS:如果有了以上软件,无须自己再去创建文件和文件夹,而是直接传递 命令 给上...原创 2018-04-21 14:21:31 · 109 阅读 · 0 评论 -
Python开发【第十八篇】:MySQL(二) 视图
视图视图是一个虚拟表(非真实存在),其本质是【根据SQL语句获取动态的数据集,并为其命名】,用户使用时只需使用【名称】即可获取结果集,并可以将其当作表来使用。SELECT *FROM ( SELECT nid, NAME FROM tb1 WHERE ...原创 2018-04-21 14:21:34 · 730 阅读 · 0 评论 -
Python开发【第十九篇】:Python操作MySQL
本篇对于Python操作MySQL主要使用两种方式:原生模块 pymsqlORM框架 SQLAchemypymsqlpymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同。下载安装1pip3 install pymysql使用操作1、执行SQL1234567891011121314151617181920212223242526#!/usr/bin/env pytho...原创 2018-04-21 14:21:37 · 168 阅读 · 0 评论 -
Python开发【第二十篇】:缓存
MemcachedMemcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。Memcached安装和基本...原创 2018-04-21 14:21:40 · 118 阅读 · 0 评论 -
Python开发【第二十一篇】:Web框架之Django【基础】
Python的WEB框架有Django、Tornado、Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM、模型绑定、模板引擎、缓存、Session等诸多功能。基本配置一、创建django程序终端命令:django-admin startproject sitenameIDE创建Django程序时,本质上都是自动执行上述命令其他常用命令: python m...原创 2018-04-21 14:21:42 · 178 阅读 · 0 评论 -
Python开发【第二十二篇】:Web框架之Django【进阶】
Model到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞:创建数据库,设计表结构和字段使用 MySQLdb 来连接数据库,并编写数据访问层代码业务逻辑层去调用数据访问层执行数据库操作import MySQLdb def GetList(sql): db = MySQLdb.connect(user='root', db='wupeiqidb', passwd='12...原创 2018-04-21 14:21:45 · 214 阅读 · 0 评论 -
Python开发【第十四篇】:Web框架本质
Web框架本质众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端。12345678910111213141516171819202122#!/usr/bin/env python#coding:utf-8 import socket def handle_request(client): buf = client.recv(1...原创 2018-04-21 14:21:23 · 178 阅读 · 0 评论 -
Python开发【第十二篇】:DOM
文档对象模型(Document Object Model,DOM)是一种用于HTML和XML文档的编程接口。它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式。我们最为关心的是,DOM把网页和脚本以及其他的编程语言联系了起来。DOM属于浏览器,而不是JavaScript语言规范里的规定的核心内容。一、查找元素1、直接查找1234document.getElementById ...原创 2018-04-21 14:21:21 · 172 阅读 · 0 评论 -
Python开发【第三篇】:Python基本数据类型
运算符1、算数运算:2、比较运算:3、赋值运算:4、逻辑运算:5、成员运算:基本数据类型1、数字int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647 在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807c...原创 2018-04-21 14:20:59 · 226 阅读 · 0 评论 -
Python开发【第四篇】:Python基础之函数
三元运算三元运算(三目运算),是对简单的条件语句的缩写。12345# 书写格式 result = 值1 if 条件 else 值2 # 如果条件成立,那么将 “值1” 赋值给result变量,否则,将“值2”赋值给result变量基本数据类型补充setset集合,是一个无序且不重复的元素集合123456789101112131415161718192021222324252627282930313...原创 2018-04-21 14:21:02 · 222 阅读 · 0 评论 -
Python内置函数介绍
Python/C API:https://docs.python.org/2/内置函数:abs(number) #返回值是一个数字的绝对值,如果是复数,返回值是复数的模abs(-1.2) #返回 1.2abs(1.2) #返回 1.2abs(-1-1j) #返回 1.41421356237 all(iterable) #所有的值为真时才为真,只要有一个是假就是假def all(iter...原创 2018-04-21 14:21:05 · 216 阅读 · 0 评论 -
Python开发【第五篇】:Python基础之杂货铺
字符串格式化Python的字符串格式化有两种方式: 百分号方式、format方式百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存。[PEP-3101]This PEP proposes a new system for built-in string formatting operations, intended as a replacement ...原创 2018-04-21 14:21:07 · 141 阅读 · 0 评论 -
Python开发【第六篇】:模块
模块,用一砣代码实现了某个功能的代码集合。 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合。而对于一个复杂的功能来,可能需要多个函数才能完成(函数又可以在不同的.py文件中),n个 .py 文件组成的代码集合就称为模块。如:os 是系统相关的模块;file是文件操作相关的模块模块分为三种:自定义模块第三方模块内置模块自定义模块1、定...原创 2018-04-21 14:21:10 · 1127 阅读 · 0 评论 -
Python开发【第七篇】:面向对象
面向对象基础基础内容介绍详见一下两篇博文:面向对象(初级篇)概述面向过程:根据业务逻辑从上到下写垒代码函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可面向对象:对函数进行分类和封装,让开发“更快更好更强...”面向过程编程最易被初学者接受,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,即:将之前实现的代码块复制到现需功能处。123456789101112...原创 2018-04-21 14:21:13 · 238 阅读 · 0 评论 -
Python开发【第八篇】:网络编程
Socketsocket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求。socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,对于文件用【打开】【读写】【关闭】模式来操作。socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、...原创 2018-04-21 14:21:16 · 189 阅读 · 0 评论 -
Python开发【第十一篇】:JavaScript
JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处理。一、如何编写1、JavaScript代码存在形式1234567<!-- 方式一 --><script type"text/javascript" src="JS文件"></script>...原创 2018-04-21 14:21:18 · 244 阅读 · 0 评论 -
深入浅出 Python 装饰器:16 步轻松搞定 Python 装饰器
目录[-]1. 函数2. 作用域3. 变量解析规则4. 变量生存周期5. 函数参数6. 嵌套函数7. 函数是python世界里的一级类对象8. 闭包9. 装饰器10. 使用 @ 标识符将装饰器应用到函数11. *args and **kwargs12. 更通用的装饰器13. 带参数的装饰器:14. 装饰器的副作用15. class式的 Decorator16. 一些decorator的示例16.1...原创 2018-04-21 14:23:47 · 417 阅读 · 0 评论 -
用Python解析XML的几种常见方法的介绍
一、简介 XML(eXtensible Markup Language)指可扩展标记语言,被设计用来传输和存储数据,已经日趋成为当前许多新生技术的核心,在不同的领域都有着不同的应用。它是web发展到一定阶段的必然产物,既具有SGML的核心特征,又有着HTML的简单特性,还具有明确和结构良好等许多新的特性。 python解析XML常见的有三种方法:一是xml.dom.*模...原创 2018-04-21 14:23:50 · 8068 阅读 · 1 评论 -
python爬虫从入门到放弃(二)之爬虫的原理
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/6898138.html在上文中我们说了:爬虫就是请求网站并提取数据的自动化程序。其中请求,提取,自动化是爬虫的关键!下面我们分析爬虫的基本流程爬虫的基本流程发起请求通过HTTP库向目标站点发起请求,也就是发送一个Request,请求可以包含额外的header等信息,等待服务器响应获取响应内容如果服务...原创 2018-04-21 14:34:20 · 214 阅读 · 0 评论 -
Python爬虫从入门到放弃(十二)之 Scrapy框架的架构和原理
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/7173397.html这一篇文章主要是为了对scrapy框架的工作流程以及各个组件功能的介绍Scrapy目前已经可以很好的在python3上运行Scrapy使用了Twisted作为框架,Twisted有些特殊的地方是它是事件驱动的,并且比较适合异步的代码。对于会阻塞线程的操作包含访问文件、数据库或者...原创 2018-04-21 14:34:48 · 511 阅读 · 0 评论 -
Python爬虫从入门到放弃(十三)之 Scrapy框架的命令行详解
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/7183220.html这篇文章主要是对的scrapy命令行使用的一个介绍创建爬虫项目scrapy startproject 项目名例子如下:localhost:spider zhaofan$ scrapy startproject test1New Scrapy project 'test1', ...原创 2018-04-21 14:34:51 · 214 阅读 · 0 评论 -
Python爬虫从入门到放弃(十五)之 Scrapy框架中Spiders用法
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/7192503.htmlSpider类定义了如何爬去某个网站,包括爬取的动作以及如何从网页内容中提取结构化的数据,总的来说spider就是定义爬取的动作以及分析某个网页工作流程分析以初始的URL初始化Request,并设置回调函数,当该request下载完毕并返回时,将生成response,并作为参数...原创 2018-04-21 14:34:54 · 2011 阅读 · 0 评论 -
Python爬虫从入门到放弃(十四)之 Scrapy框架中选择器的用法
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/7189860.htmlScrapy提取数据有自己的一套机制,被称作选择器(selectors),通过特定的Xpath或者CSS表达式来选择HTML文件的某个部分Xpath是专门在XML文件中选择节点的语言,也可以用在HTML上。CSS是一门将HTML文档样式化语言,选择器由它定义,并与特定的HTML...原创 2018-04-21 14:34:56 · 173 阅读 · 0 评论 -
Python爬虫从入门到放弃(十六)之 Scrapy框架中Item Pipeline用法
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/7196197.html当Item 在Spider中被收集之后,就会被传递到Item Pipeline中进行处理每个item pipeline组件是实现了简单的方法的python类,负责接收到item并通过它执行一些行为,同时也决定此Item是否继续通过pipeline,或者被丢弃而不再进行处理ite...原创 2018-04-21 14:34:59 · 348 阅读 · 0 评论 -
Python爬虫从入门到放弃(十七)之 Scrapy框架中Download Middleware用法
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/7198407.html这篇文章中写了常用的下载中间件的用法和例子。Downloader Middleware处理的过程主要在调度器发送requests请求的时候以及网页将response结果返回给spiders的时候,所以从这里我们可以知道下载中间件是介于Scrapy的request/respons...原创 2018-04-21 14:35:01 · 1097 阅读 · 3 评论 -
Python爬虫番外篇之Cookie和Session
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/7211253.html关于cookie和session估计很多程序员面试的时候都会被问到,这两个概念在写web以及爬虫中都会涉及,并且两者可能很多人直接回答也不好说的特别清楚,所以整理这样一篇文章,也帮助自己加深理解什么是Cookie其实简单的说就是当用户通过http协议访问一个服务器的时候,这个服...原创 2018-04-21 14:35:04 · 423 阅读 · 0 评论 -
Python爬虫从入门到放弃(十八)之 Scrapy爬取所有知乎用户信息(上)
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/7215617.html爬取的思路首先我们应该找到一个账号,这个账号被关注的人和关注的人都相对比较多的,就是下图中金字塔顶端的人,然后通过爬取这个账号的信息后,再爬取他关注的人和被关注的人的账号信息,然后爬取被关注人的账号信息和被关注信息的关注列表,爬取这些用户的信息,通过这种递归的方式从而爬取整个知...原创 2018-04-21 14:35:07 · 1428 阅读 · 2 评论 -
Python爬虫从入门到放弃(十一)之 Scrapy框架整体的一个了解
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/7173094.html这里是通过爬取伯乐在线的全部文章为例子,让自己先对scrapy进行一个整理的理解该例子中的详细代码会放到我的github地址:https://github.com/pythonsite/spider/tree/master/jobboleSpider注:这个文章并不会对详细的用...原创 2018-04-21 14:34:46 · 1146 阅读 · 0 评论 -
爬虫性能相关
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/7171148.html这里我们通过请求网页例子来一步步理解爬虫性能当我们有一个列表存放了一些url需要我们获取相关数据,我们首先想到的是循环简单的循环串行这一种方法相对来说是最慢的,因为一个一个循环,耗时是最长的,是所有的时间总和代码如下:import requestsurl_list = [...原创 2018-04-21 14:34:43 · 272 阅读 · 0 评论 -
python爬虫从入门到放弃(一)之初识爬虫
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/6897393.html整理这个文档的初衷是自己开始学习的时候没有找到好的教程和文本资料,自己整理一份这样的资料希望能对小伙伴有帮助 什么是爬虫?网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常...原创 2018-04-21 14:34:22 · 220 阅读 · 0 评论 -
python爬虫从入门到放弃(三)之 Urllib库的基本使用
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/6910871.html官方文档地址:https://docs.python.org/3/library/urllib.html什么是UrllibUrllib是python内置的HTTP请求库包括以下模块urllib.request 请求模块urllib.error 异常处理模块urllib.pars...原创 2018-04-21 14:34:25 · 199 阅读 · 1 评论 -
python爬虫从入门到放弃(六)之 BeautifulSoup库的使用
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/6930955.html上一篇文章的正则,其实对很多人来说用起来是不方便的,加上需要记很多规则,所以用起来不是特别熟练,而这节我们提到的beautifulsoup就是一个非常强大的工具,爬虫利器。beautifulSoup “美味的汤,绿色的浓汤”一个灵活又方便的网页解析库,处理高效,支持多种解析器。...原创 2018-04-21 14:34:28 · 324 阅读 · 0 评论 -
python爬虫从入门到放弃(四)之 Requests库的基本使用
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/6915127.html什么是RequestsRequests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库如果你看过上篇文章关于urllib库的使用,你会发现,其实urllib还是非常不方便的,而Requests它会比urllib更加方便,可...原创 2018-04-21 14:34:30 · 476 阅读 · 0 评论 -
python爬虫从入门到放弃(七)之 PyQuery库的使用
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/6935473.htmlPyQuery库也是一个非常强大又灵活的网页解析库,如果你有前端开发经验的,都应该接触过jQuery,那么PyQuery就是你非常绝佳的选择,PyQuery 是 Python 仿照 jQuery 的严格实现。语法与 jQuery 几乎完全相同,所以不用再去费心去记一些奇怪的方法...原创 2018-04-21 14:34:33 · 970 阅读 · 0 评论 -
python爬虫从入门到放弃(八)之 Selenium库的使用
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/6953241.html一、什么是Seleniumselenium 是一套完整的web应用程序测试系统,包含了测试的录制(selenium IDE),编写及运行(Selenium Remote Control)和测试的并行处理(Selenium Grid)。Selenium的核心Selenium Co...原创 2018-04-21 14:34:35 · 444 阅读 · 0 评论 -
python爬虫从入门到放弃(九)之 实例爬取上海高级人民法院网开庭公告数据
本文出自“python修行路”博客,http://www.cnblogs.com/zhaof/p/6959012.html通过前面的文章已经学习了基本的爬虫知识,通过这个例子进行一下练习,毕竟前面文章的知识点只是一个一个单独的散知识点,需要通过实际的例子进行融合分析网站其实爬虫最重要的是前面的分析网站,只有对要爬取的数据页面分析清楚,才能更方便后面爬取数据目标站和目标数据目标地址:http://w...原创 2018-04-21 14:34:38 · 2065 阅读 · 0 评论 -
Python爬虫从入门到放弃(十)之 关于深度优先和广度优先
网站的树结构深度优先算法和实现广度优先算法和实现网站的树结构通过伯乐在线网站为例子:并且我们通过访问伯乐在线也是可以发现,我们从任何一个子页面其实都是可以返回到首页,所以当我们爬取页面的数据的时候就会涉及到去重的问题,我们需要将爬过的url记录下来,我们将上图进行更改在爬虫系统中,待抓取URL队列是很重要的一部分,待抓取URL队列中的URL以什么样的顺序排队列也是一个很重要的问题,因为这涉及到先抓...原创 2018-04-21 14:34:41 · 459 阅读 · 0 评论