Python重试模块retrying工作中经常碰到的问题就是,某个方法出现了异常,重试几次。循环重复一个方法是很常见的。比如爬虫中的获取代理,对获取失败的情况进行重试。刚开始搜的几个博客讲的有点问题,建议看官方文档,还有自己动手实验。参考:https://segmentfault.com/a/1190000004085023https://pypi.org/project/retrying/最初的版本importrequestsclassProxyUtil
系统 2019-09-27 17:49:24 1899
前言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
一、字符串(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
一数据结构和GIL1queue标准库queue模块,提供FIFO的queue、LIFO的队列,优先队列Queue类是线程安全的,适用于多线程间安全的交换数据,内部使用了Lock和Condition为什么说容器的大小不准确,其原因是如果不加锁,是不可能获取到准确的大小的,因为你刚读取了一个大小,还没取走,有可能被就被其他线程修改了,queue类的size虽然加了锁,但是依然不能保证立即get,put就能成功,因为读取大小和get,put方法是分来的。2GIL
系统 2019-09-27 17:48:10 1899
1.服务端主程序:#encoding:utf-8importthreadingfromprocedure.socket_serverimportThreadingHttpServer,MainHandlerfromprocedure.processimportmq_respond_procedurefromloggerimportlog,logwffromconfimport(HOST,PORT,MQ_A_RECV_1,MQ_A_RECV_2,MQ_A_R
系统 2019-09-27 17:47:49 1899
众所周知python的拿手好戏就是爬虫抓取数据,性能优秀,抓取时间快,消耗低,这是python的优势。学会了爬虫后那我们就可以抓取竞争对手的数据,可以对数据进行分析,或者拿来使用(作者不赞成这样做哦)。最重要是对数据进行分析,这样对我们的运营自己的产品,提高用户的新增或留存都是很有帮助的,正所谓现在是大数据年代,没有数据我们也能利用别人的数据。那要怎样才能更好去学习python爬虫呢?今天推荐一本最新使用python3的书籍,值得阅读。《Python3网络
系统 2019-09-27 17:47:38 1899
题目描述请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。输出描述:如果当前字符流没有存在出现一次的字符,返回#字符。思路用两个列表,一个用来保存所有的字符,一个用来保存只出现一次的字符,算法#-*-coding:utf-8-*-classSolution:#返回对应chardef__init__
系统 2019-09-27 17:47:35 1899
要爬取的网站不需要登陆,没有反爬机制,操作很简单首先安装需要的程序包pipinstallrequestspipinstallbeautifulsoup4pipinstallxlwt具体的实现类GetInfo.py#信息实体类classproduct_info(object):serios=''#存放商品系列productActualPrice=''#存放商品成交价productOldPrice=''#存放商品面价detailString=''#存放商品详情
系统 2019-09-27 17:47:27 1899
swapCase()方法返回所有可大小写,基于字符大小写交换字符串的一个副本。语法以下是swapCase()方法的语法:str.swapcase();参数NA返回值此方法返回其中所有基于大小写字符交换字符串的一个副本。例子下面的例子显示的swapCase()方法的使用。#!/usr/bin/pythonstr="thisisstringexample....wow!!!";printstr.swapcase();str="THISISSTRINGEXAMP
系统 2019-09-27 17:47:06 1899
上面的博客把基本的HTML解析库已经说完了,这次我们来给予几个实战的项目。这次主要用Requests库+正则表达式来解析HTML。项目一:爬取猫眼电影TOP100信息代码地址:https://gitee.com/dwyui/maoyan-Requests.git项目二:美食爬取(包含多层爬取)代码地址:https://gitee.com/dwyui/meishi_Requests.git
系统 2019-09-27 17:47:06 1899