随笔分类 -  python

摘要:系列文章 "python模块分析之random(一)" "python模块分析之hashlib加密(二)" "python模块分析之typing(三)" "python模块分析之logging日志(四)" "python模块分析之unittest测试(五)" "python模块分析之collecti 阅读全文
posted @ 2018-04-09 18:26 倥偬时光 阅读(1127) 评论(0) 推荐(1) 编辑
摘要:前言 前段时间需要使用rabbitmq做写缓存,一直使用pika+rabbitmq的组合,pika这个模块虽然可以很直观地操作rabbitmq,但是官方给的例子太简单,对其底层原理了解又不是很深,遇到很多坑,尤其是需要自己写连接池管理和channel池管理。虽然也有用过celery,一直也是cele 阅读全文
posted @ 2018-04-09 14:40 倥偬时光 阅读(66904) 评论(12) 推荐(22) 编辑
摘要:前言 python的logging模块是用来设置日志的,是python的标准模块。 系列文章 "python模块分析之random(一)" "python模块分析之hashlib加密(二)" "python模块分析之typing(三)" "python模块分析之logging日志(四)" "pyth 阅读全文
posted @ 2018-03-24 17:58 倥偬时光 阅读(3041) 评论(0) 推荐(0) 编辑
摘要:supervisor是python写的一个管理进程运行的工具,可以很方便的监听、启动、停止、重启一个或多个进程;有了supervisor后,就不用字节写启动和监听的shell脚本了,非常方便。 supervisor只支持linux系统,并基于python2环境运行,目前python3还没有官方的版本 阅读全文
posted @ 2018-03-22 13:39 倥偬时光 阅读(3644) 评论(0) 推荐(1) 编辑
摘要:前言 关于计算器运行的上下文的概念,我的理解也不是很深;按我的理解就是程序在运行之前,其所需要的资源,运行环境等都会被序列化,然后加入到CPU的任务队列中,等待调度系统分配时间片执行。下面谈谈python上下文管理器的使用。 系列文章 "python基础之文件读写" 上下文管理器 python中最常 阅读全文
posted @ 2018-03-19 11:49 倥偬时光 阅读(748) 评论(0) 推荐(0) 编辑
摘要:pycharm是Java写的,运行需要Java环境。 安装java jdk 安装过程中出现对话框,选择是; 安装完成后,运行java version 或者javac version 查看是否安装成功。 安装pycharm 去官网下载:https://www.jetbrains.com/pycharm 阅读全文
posted @ 2018-03-14 11:37 倥偬时光 阅读(591) 评论(0) 推荐(0) 编辑
摘要:前言 文件读写可以说是最常用的功能之一,总结一下python内置的读写文件的方法。 打开文件 open 参数说明: file:文件路径,可以是相对路径,也可以是绝对路径 mode: 文件的读写方式,默认‘r’,只读方式; buffering:设置缓冲策略,0用于二进制文件,1为行缓冲,用于文本模式; 阅读全文
posted @ 2018-03-08 23:41 倥偬时光 阅读(2095) 评论(4) 推荐(2) 编辑
摘要:熟悉python编程的都知道,python三种最常见的py文件格式,.py,.pyc,.pyw,下面说一说它们各自的使用。 py文件 python最常见的文件,是python项目的源码; 文件执行时linux下调用python执行,windows下调用python.exe; 如果在终端窗口或IDE执 阅读全文
posted @ 2018-03-05 14:36 倥偬时光 阅读(10232) 评论(0) 推荐(0) 编辑
摘要:转载自 https://www.cnblogs.com/JohnABC/p/4065437.html 学习python或者其他有异常控制的编程语 言, 大家很有可能说try except finally(try catch finally)的执行很简单,无非就是有异常的话执行except, fina 阅读全文
posted @ 2018-03-01 18:48 倥偬时光 阅读(4563) 评论(0) 推荐(3) 编辑
摘要:前言 客户端连接rabbitmq后,如果长时间没有数据的传输,rabbitmq会申请关闭TCP连接,造成该TCP连接下的所有的信道都不可用,很多时候为了传输数据的高效率,我们会先创建一个信道池,这样省去了每次数据传输连接和释放连接的时间,但由于rabbitmq可能会远程关闭连接,因此需要判断连接池中 阅读全文
posted @ 2018-02-26 17:44 倥偬时光 阅读(2373) 评论(1) 推荐(0) 编辑
摘要:前言 os.system方法是os模块最基础的方法,其它的方法一般在该方法基础上封装完成。 os的system原理 system函数可以将字符串转化成命令在服务器上运行;其原理是每一条system函数执行时,其会创建一个子进程在系统上执行命令行,子进程的执行结果无法影响主进程; 上述原理会导致当需要 阅读全文
posted @ 2018-02-24 14:12 倥偬时光 阅读(247341) 评论(0) 推荐(10) 编辑
摘要:前言 下面关注一下rabbitmq实际使用时的性能问题和怎么进行一些优化。 性能测试 针对每个需要生产/消费者与rabbitmq进行通讯的方法进行测试 测试环境 排除网络IO的干扰,采用生产者和消费者都在本地服务器的方式 内存16G,CPU4核,3.1GHZ 操作系统:oracle linux py 阅读全文
posted @ 2018-02-09 17:45 倥偬时光 阅读(3797) 评论(0) 推荐(0) 编辑
摘要:前言 接下来使用python的pika模块连接rabbitmq。 环境搭建 安装python,不会的请参考 "Linux安装配置python3.6环境" 安装pika模块 实例介绍 先从一个最简单的生产者/消费者说起 分析方法 创建一个连接connection pika.PlainCredentia 阅读全文
posted @ 2018-02-07 13:47 倥偬时光 阅读(6097) 评论(0) 推荐(2) 编辑
摘要:前言 前面介绍了在数据库命令行直接操作redis,现在学习使用python的redis包来操作redis,本人安装的是redis==2.10.6; 系列文章 "redis安装和配置" "redis命令行操作" "redis订阅、事务、复制" "redis基础之基本键值操作和使用" python与re 阅读全文
posted @ 2018-01-12 09:49 倥偬时光 阅读(1457) 评论(0) 推荐(1) 编辑
摘要:前面介绍了python在ubuntu16.04环境下,python的虚拟环境virtualenv的安装,下面介绍在windows环境下的安装和使用。 环境信息 操作系统:windows10 python版本:3.6.3 安装 1. 下载安装python3.6.3 进入官网:https://www.p 阅读全文
posted @ 2018-01-03 22:33 倥偬时光 阅读(49789) 评论(0) 推荐(6) 编辑
摘要:爬虫的分类 按使用场景: 1. 通用爬虫:指搜索引擎的爬虫 2. 聚焦爬虫:指针对特定网站的爬虫 聚焦爬虫又可以分为大致3种: 1. 累积式爬虫: 从开始到结束,一直不断爬取,过程中会进行去重操作; 2. 增量式爬虫: 对已经下载的网页采取增量式更新和只爬行新产生的或者已经发生变化网页的爬虫; 3. 阅读全文
posted @ 2018-01-03 09:50 倥偬时光 阅读(1508) 评论(2) 推荐(2) 编辑
摘要:平时写爬虫的时候并不需要设置setting里所有的参数,今天心血来潮,花了点时间查了一下setting模块创建后自动写入的所有参数的含义,记录一下。 模块相关说明信息 项目名字和爬虫模块说明,引擎根据这个信息找到爬虫 浏览器的USER_AGENT,可以自定义伪装。 是否遵守robots协议,默认是遵 阅读全文
posted @ 2017-11-15 19:57 倥偬时光 阅读(1320) 评论(0) 推荐(0) 编辑
摘要:一、 最近使用python写入文件时,出现了如下的错误: 但是content的内容是unicode编码,不知道怎么和gbk扯上了关系,对content使用encode()和decode(),用gbk,utf-8,gb2312各种编码解码都没有效果; 在网上查找资料,看到一篇文章关于这个的说法:htt 阅读全文
posted @ 2017-11-14 23:40 倥偬时光 阅读(60114) 评论(10) 推荐(19) 编辑
摘要:转载自:https://www.cnblogs.com/codingmylife/archive/2010/06/06/1752807.html 1.性能 Py3.0运行 pystone benchmark的速度比Py2.5慢30%。Guido认为Py3.0有极大的优化空间,在字符串和整形操作上可  阅读全文
posted @ 2017-11-13 15:49 倥偬时光 阅读(282) 评论(0) 推荐(0) 编辑
摘要:前言:很多人在写完代码一段时间后回过头看代码,很可能忘记了自己写的函数需要传什么参数,返回什么类型的结果,就不得不去阅读代码的具体内容,降低了阅读的速度,加上Python本身就是一门弱类型的语言,这种现象就变得更加的严重,而typing这个模块很好的解决了这个问题。 系列文章 "python模块分析 阅读全文
posted @ 2017-11-13 12:13 倥偬时光 阅读(30383) 评论(4) 推荐(4) 编辑