pika生产者程序大致步骤:1.建立连接connection,需要认证的调用认证参数2.创建通道channel当然channel可以池化,这样可以重复使用3.声明队列指定队列属性,一旦指定属性不能修改,例如是否持久化,名称4.声明交换机交换机类型,名称等,也可以不用声明,直接使用“”空字符串,默认交换机也可以5.将队列与交换机绑定queue_bind6.basic_publish发送到交换机指定路由键pika消费者程序大致步骤:1.建立连接connecti
系统 2019-09-27 17:51:26 1939
一、and:在Python中,and和or执行布尔逻辑演算,如你所期待的一样,但是它们并不返回布尔值;而是,返回它们实际进行比较的值之一。复制代码代码如下:>>>'a'and'b''b'>>>''and'b'''>>>'a'and'b'and'c''c'在布尔上下文中从左到右演算表达式的值,如果布尔上下文中的所有值都为真,那么and返回最后一个值。如果布尔上下文中的某个值为假,则and返回第一个假值二、or:复制代码代码如下:>>>'a'or'b''a'>
系统 2019-09-27 17:49:41 1939
最近要对一系列数据做同比比较,需要用到numpy和pandas来计算,不过使用python安装numpy和pandas因为linux环境没有外网遇到了很多问题就记下来了。首要条件,python版本必须是2.7以上。linux首先安装依赖包yum-yinstallblasblas-devellapack-devellapackyum-yinstallseabornscipyyum-yinstallfreetypefreetype-devellibpnglib
系统 2019-09-27 17:49:31 1939
Python重试模块retrying工作中经常碰到的问题就是,某个方法出现了异常,重试几次。循环重复一个方法是很常见的。比如爬虫中的获取代理,对获取失败的情况进行重试。刚开始搜的几个博客讲的有点问题,建议看官方文档,还有自己动手实验。参考:https://segmentfault.com/a/1190000004085023https://pypi.org/project/retrying/最初的版本importrequestsclassProxyUtil
系统 2019-09-27 17:49:24 1939
ccs的优点:css相对xpath语法比xpath简洁,定位速度比xpath快css的缺点:css不支持用逻辑运算符来定位,而xpath支持。css定位语法形式多样,相对xpath比较难记。css定位建议多用,这个定位方式很强大,定位速度快且准确度高。至于难记,用熟了就好了,对勤快的人来说,这不是问题。CSS_selector常用符号:#表示id.表示class>表示子元素,层级1.通过id属性定位:find_element_by_css_selector
系统 2019-09-27 17:49:19 1939
对于Linux用户来说,命令行的名声相当的高。不像其他操作系统,命令行是一个可怕的命题,但是对于Linux社区中那些经验丰富的大牛,命令行却是最值得推荐鼓励使用的。通常,命令行对比图形用户界面,更能提供更优雅和更高效的解决方案。命令行伴随着Linux社区的成长,UNIXshells,例如bash和zsh,已经成长为一个强大的工具,也是UNIXshell的重要组成部分。使用bash和其他类似的shells,可以得到一些很有用的功能,例如,管道,文件名通配符和
系统 2019-09-27 17:49:16 1939
前言Python生成器(generator)并不是一个晦涩难懂的概念。相比于MetaClass和Closure等概念,其较为容易理解和掌握。但相对于程序结构:顺序、循环和分支而言其又不是特别的直观。无论学习任何的东西,概念都是非常重要的。正确树立并掌握一些基础的概念是灵活和合理运用的前提,本文将以一种通俗易懂的方式介绍一下generator和yield表达式。1.Iterator与Iterable首先明白两点:Iterator(迭代器)是可迭代对象;可迭代
系统 2019-09-27 17:48:41 1939
Python标准库中functools库中有很多对方法很有有操作的封装,partialObjects就是其中之一,他是对方法参数默认值的修改。下面就看下简单的应用测试。复制代码代码如下:#!/usr/bin/envpython#-*-coding:utf-8-*-#python2.7x#partial.py#authror:orangleliu'''functools中Partial可以用来改变一个方法默认参数1改变原有默认值参数的默认值2给原来没有默认值
系统 2019-09-27 17:48:32 1939
通常来说,Python的变量/数据类型非常多,但是它是不需要用户指定的,因为有些是根据部份系统函数生成,另外一些是自动根据变量的值识别的,这些数据类型常量在classtypes定义,所以使用时需要importtypes如:复制代码代码如下:importtypesa=[1,2,3]iftype(a)istypes.ListType:printaelse:print'notlist'Python的具体变量/数据类型如下:NoneTypeNone类型TypeTy
系统 2019-09-27 17:48:24 1939
python解释器运行代码的流程启动python解释器(相当于文本编辑器)打开文件,显示这个字符并检查语法(涉及字符编码,a=1只是一个很普通的字符)解释字符(涉及字符编码,再去内存空间生成一个a=1的变量)python2用的是ascii,python3默认是utf8读取字符#coding:gbk会告诉python3解释器用gbk编码读取字符python3(了解)你看到的其实是unicode但是终端帮你把这个unicode的0和1做一个转换,从unicod
系统 2019-09-27 17:48:12 1939