- 军军小站|张军博客
搜索到与相关的文章
Python

使用Python中的greenlet包实现并发编程的入门教程

1动机greenlet包是Stackless的副产品,其将微线程称为“tasklet”。tasklet运行在伪并发中,使用channel进行同步数据交换。一个”greenlet”,是一个更加原始的微线程的概念,但是没有调度,或者叫做协程。这在你需要控制你的代码时很有用。你可以自己构造微线程的调度器;也可以使用”greenlet”实现高级的控制流。例如可以重新创建构造器;不同于Python的构造器,我们的构造器可以嵌套的调用函数,而被嵌套的函数也可以yiel

系统 2019-09-27 17:49:28 1899

Python

Python重试模块retrying

Python重试模块retrying工作中经常碰到的问题就是,某个方法出现了异常,重试几次。循环重复一个方法是很常见的。比如爬虫中的获取代理,对获取失败的情况进行重试。刚开始搜的几个博客讲的有点问题,建议看官方文档,还有自己动手实验。参考:https://segmentfault.com/a/1190000004085023https://pypi.org/project/retrying/最初的版本importrequestsclassProxyUtil

系统 2019-09-27 17:49:24 1899

Python

【Python3网络爬虫开发实战】3.3-正则表达式

【摘要】本节中,我们看一下正则表达式的相关用法。正则表达式是处理字符串的强大工具,它有自己特定的语法结构,有了它,实现字符串的检索、替换、匹配验证都不在话下。当然,对于爬虫来说,有了它,从HTML里提取想要的信息就非常方便了。1.实例引入说了这么多,可能我们对它到底是个什么还是比较模糊,下面就用几个实例来看一下正则表达式的用法。打开开源中国提供的正则表达式测试工具http://tool.oschina.net/regex/,输入待匹配的文本,然后选择常用的

系统 2019-09-27 17:48:57 1899

Python

经验拾忆(纯手工)=> Redis与Python操作Redis语法对比解析

前言R:代表redis-cliP:代表python的redis准备pipinstallredispool=redis.ConnectionPool(host='39.107.86.223',port=6379,db=1)redis=redis.Redis(connection_pool=pool)redis.所有命令下面命令所有命令我都省略了,有和Python内置函数冲突的我会加上redis.全局命令dbsize(返回key的数量)R:dbsizeP:pr

系统 2019-09-27 17:48:51 1899

Python

利用Python实现简单的相似图片搜索的教程

大概五年前吧,我那时还在为一家约会网站做开发工作。他们是早期创业公司,但他们也开始拥有了一些稳定用户量。不像其他约会网站,这家公司向来以洁身自好为主要市场形象。它不是一个供你鬼混的网站――是让你能找到忠实伴侣的地方。由于投入了数以百万计的风险资本(在US大萧条之前),他们关于真爱并找寻灵魂伴侣的在线广告势如破竹。Forbes(福布斯,美国著名财经杂志)采访了他们。全国性电视节目也对他们进行了专访。早期的成功促成了事业起步时让人垂涎的指数级增长现象――他们的

系统 2019-09-27 17:48:46 1899

Python

Python 数据类型--str&bytes

一、字符串(str)1.1字符串的定义字符串就是一串字符,是编程语言中表示文本的数据类型在Python中可以使用一对双引号"或者一对单引号'定义一个字符串可以使用索引获取一个字符串中指定位置的字符,索引计数从0开始也可以使用for循环遍历字符串中每一个字符1#!/usr/bin/envpython32#-*-coding:utf-8-*-34"""5@author:fyh6@time:2019/5/317"""89str1="hellopython"101

系统 2019-09-27 17:48:32 1899

Python

python数据结构和GIL及多进程

一数据结构和GIL1queue标准库queue模块,提供FIFO的queue、LIFO的队列,优先队列Queue类是线程安全的,适用于多线程间安全的交换数据,内部使用了Lock和Condition为什么说容器的大小不准确,其原因是如果不加锁,是不可能获取到准确的大小的,因为你刚读取了一个大小,还没取走,有可能被就被其他线程修改了,queue类的size虽然加了锁,但是依然不能保证立即get,put就能成功,因为读取大小和get,put方法是分来的。2GIL

系统 2019-09-27 17:48:10 1899

Python

Python 编码规范(Google Python Style Guide)

Python风格规范(Google)本项目并非Google官方项目,而是由国内程序员凭热情创建和维护。如果你关注的是Google官方英文版,请移步GoogleStyleGuide以下代码中Yes表示推荐,No表示不推荐。分号不要在行尾加分号,也不要用分号将两条命令放在同一行。行长度每行不超过80个字符以下情况除外:长的导入模块语句注释里的URL不要使用反斜杠连接行。Python会将圆括号,中括号和花括号中的行隐式的连接起来,你可以利用这个特点.如果需要,你

系统 2019-09-27 17:48:09 1899

Python

python实现多线程采集的2个代码例子

代码一:#!/usr/bin/python#-*-coding:utf-8-*-#encoding=utf-8importthreadingimportQueueimportsysimporturllib2importreimportMySQLdb##数据库变量设置#DB_HOST='127.0.0.1'DB_USER="XXXX"DB_PASSWD="XXXXXXXX"DB_NAME="xxxx"##变量设置#THREAD_LIMIT=3jobs=Que

系统 2019-09-27 17:47:49 1899

Python

学会爬虫抓取竞争对手数据,《Python3网络爬虫开发实战》PDF高清+源码

众所周知python的拿手好戏就是爬虫抓取数据,性能优秀,抓取时间快,消耗低,这是python的优势。学会了爬虫后那我们就可以抓取竞争对手的数据,可以对数据进行分析,或者拿来使用(作者不赞成这样做哦)。最重要是对数据进行分析,这样对我们的运营自己的产品,提高用户的新增或留存都是很有帮助的,正所谓现在是大数据年代,没有数据我们也能利用别人的数据。那要怎样才能更好去学习python爬虫呢?今天推荐一本最新使用python3的书籍,值得阅读。《Python3网络

系统 2019-09-27 17:47:38 1899