- 博客(32)
- 收藏
- 关注
原创 Redis布隆过滤器和布谷鸟过滤器
一、过滤器使用场景:比如有如下几个需求:1、原本有10亿个号码,现在又来了10万个号码,要快速准确判断这10万个号码是否在10亿个号码库中? 解决办法一:将10亿个号码存入数据库中,进行数据库查询,准确性有了,但是速度会比较慢。 解决办法二:将10亿号码放入内存中,比如Redis缓存中,这里我们算一下占用内存大小:10亿*8字节=8GB,通过内存查询,准确性和速度都有了,但是大约8gb的内存...
2022-06-29 16:09:00 195
原创 python rpc 的实现
一、介绍 所谓RPC,是远程过程调用(Remote Procedure Call)的简写,网上解释很多,简单来说,就是在当前进程调用其他进程的函数时,体验就像是调用本地写的函数一般。本文实现的是在本地调用远端的类class对象的接口,也就是本地的client不实例化类对象,调用的是server端的类对象接口。为了达到让调用层无须关心底层实现,拥有丝滑般的体验,就需要以下几个部分...
2021-06-02 17:36:00 264
原创 ipython notesbook 默认路径修改
Windows下,一个很简单的解决小方法!改目录前面很多回答已经说了怎么修改目录:1.cmd: jupyter notebook --generate-config2.找到 ~\.jupyter 中的文件 jupyter_notebook_config.py3.修改c.NotebookApp.notebook_dir = '你的目录'4.去掉#号,#是注释改快捷方式我是...
2020-11-02 11:24:00 360
原创 Python操作MongoDB
MongoDB是由C++语言编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,其内容存储形式类似JSON对象,它的字段值可以包含其他文档、数组及文档数组,非常灵活。在这一节中,我们就来看看Python 3下MongoDB的存储操作。1. 准备工作在开始之前,请确保已经安装好了MongoDB并启动了其服务,并且安装好了Python的PyMongo库。2. 连接MongoDB连...
2019-11-26 10:58:00 93
原创 python读取excel,数字都是浮点型,日期格式是数字的解决办法
excel文件内容:读取excel:# coding=utf-8import xlrdimport sysreload(sys)sys.setdefaultencoding('utf-8')import tracebackclass excelHandle: def decode(self, filename, sheetname): try:...
2019-10-22 17:16:00 226
原创 flask-profiler的使用
使用profiler测量在你的Flask 应用程序中定义的端点;并通过web界面提供细粒度的报告。它给出了这些问题的答案:应用程序中的瓶颈在哪里?应用程序中最慢的终结点?哪些是最常被调用的终结点?什么导致我的慢速端点? 在哪个上下文中,什么是 ARGS 和 kwargs?特定请求花费了多少时间?简而言之,如果你对端点正在做什么和接收的请求进行了了解,请尝试打瓶探查器。通过使...
2019-10-15 11:24:00 378
原创 dcoker 搭建单节点redis
1.安装docker1、检查内核版本,必须是3.10及以上 [root@localhost ~]# uname -r 2、安装docker [root@localhost ~]# yum install docker 4、启动docker[root@localhost ~]# systemctl start docker 查看版本[root@localhost ~]# doc...
2019-10-11 09:11:00 64
原创 基于flask的python注册到eureka
Eureka架构中的三个核心角色:服务注册中心Eureka的服务端应用,提供服务注册和发现功能,就是刚刚我们建立的eureka-demo服务提供者提供服务的应用,可以是SpringBoot应用,也可以是其它任意技术实现,只要对外提供的是Rest风格服务即可。本例中就是我们实现的user-service-demo服务消费者消费应用从注册中心获取服务列表,从而得知每个服务方的信息,知道去...
2019-10-10 09:28:00 145
原创 python pickle 模块的使用详解
用于序列化的两个模块 json:用于字符串和Python数据类型间进行转换 pickle: 用于python特有的类型和python的数据类型间进行转换 json提供四个功能:dumps,dump,loads,load pickle提供四个功能:dumps,dump,loads,loadpickle可以存储什么类型的数据呢? 1、所有python支持的原生类型:布尔值,整数,浮...
2019-08-13 14:22:00 113
原创 python gunicorn详解
Gunicorn是一个unix上被广泛使用的高性能的Python WSGI UNIX HTTP Server。和大多数的web框架兼容,并具有实现简单,轻量级,高性能等特点。gunicorn 安装pip install gunicorngunicorn + flask 简单示例flask程序需要先安装flask module,pip install flask。gunicorn_d...
2019-07-09 11:07:00 206
原创 centos7安装python3.6.5
安装python3.6可能使用相关软件# yum groupinstall 'Development Tools'# yum install -y ncurses-libs zlib-devel mysql-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-deve...
2019-06-14 09:33:00 73
原创 python re的使用
re正则表达式操作 本模块提供了类似于Perl的正则表达式匹配操作。要匹配的模式和字符串可以是Unicode字符串以及8位字符串。 正则表达式使用反斜杠字符('\')来表示特殊的形式或者来允许使用特殊的字符而不要启用它们特殊的含义。这与字符串字面值中相同目的的相同字符的用法冲突;例如,要匹配一个反斜线字面值,你必须写成'\\\\'作为模式字符串,因为正则表达式必须是\\,每个反斜线在...
2019-05-28 13:32:00 174
原创 pip intsall 遇到的各种问题
一、pip install 安装指定版本的包要用pip 安装指定版本的python的包,只需要通过 ==操作符指定.pip install robotframework==2.8.7将安装robotframework2.8.7 版本。二、pip install -i 国内镜像文件国内镜像:http://pypi.douban.com/simple/ 豆瓣http://...
2019-05-28 13:27:00 148
原创 python中利用redis构建任务队列(queue)
Python中的使用标准queue模块就可以建立多进程使用的队列,但是使用redis和redis-queue(rq)模块使这一操作更加简单。Part 1.比如首先我们使用队列来简单的储存数据:我们选用redis list类型,其他类型的数据操作可以参考这个文章在redis_queue.py文件中:import redisclass RedisQueue(object): de...
2019-01-15 15:01:00 167
原创 fake-useragent,python爬虫伪装请求头
在编写爬虫进行网页数据的时候,大多数情况下,需要在请求是增加请求头,下面介绍一个python下非常好用的伪装请求头的库:fake-useragent,具体使用说明如下:1.在scrapy中的使用第一步pip install fake-useragent第二步:在middlewares中配置下载中间件。class RandomUserAgentMiddleware(object):...
2018-12-13 09:20:00 100
原创 如何将python3.6软件的py文件打包成exe程序
在我们完成一个Python项目或一个程序时,希望将Python的py文件打包成在Windows系统下直接可以运行的exe程序。在浏览网上的资料来看,有利用pyinstaller和cx_Freeze进行打包的方法。关于cx_Freeze打包的方法,可以参考wangdamozhizhou博客windows下cx_Freeze生成Python可执行程序中的方法。由于方法主...
2018-11-05 14:48:00 67
原创 python 时间和时间戳的转换
对于时间数据,如2016-05-05 20:28:54,有时需要与时间戳进行相互的运算,此时就需要对两种形式进行转换,在Python中,转换时需要用到time模块,具体的操作有如下的几种:将时间转换为时间戳重新格式化时间时间戳转换为时间获取当前时间及将其转换成时间戳1、将时间转换成时间戳 将如上的时间2016-05-05 20:28:54转换成时间戳,具体的操作过程为:利用...
2018-10-15 14:16:00 66
原创 Python - 去除list中的空字符
list1 = ['122', '2333', '3444', '', '', None]a = list(filter(None, list1)) # 只能过滤空字符和Noneprint(a) # ['122', '2333', '3444'] # Python内建filter()函数 - 过滤list# filter()把传入的函数依次作用于每个元素,然后根据返回值是Tr...
2018-09-13 08:12:00 438
原创 python xpath 中的全部用法
不好意思 ,太仓促只能给你们个url链接:https://blog.csdn.net/hhtnan/article/details/77509549
2018-08-31 16:12:00 392
原创 matplotlib.pyplot 让数据可视化
1.条形图import matplotlib.pyplot as pltplt.style.use('ggplot') # 使用ggplot样式来模拟ggplot2风格的图形,ggplot2是一个常用的R语言绘图包customers = ['ABC','DEF','GHI','JKL','MNO']customers_index = range(len(customers))s...
2018-07-12 16:14:00 167
原创 Python-OpenCV基本操作cv2
1.图片加载、显示和保存import cv2# 生成图片img = cv2.imread("1.jpg")# 生成灰色图片imgGrey = cv2.imread("1.jpg", 0)# 展示原图cv2.imshow("img", img)# 展示灰色图片cv2.imshow("imgGrey", imgGrey)# 等待图片的关闭cv2.waitKey()# ...
2018-07-05 12:05:00 46
原创 python 中的浅拷贝和深拷贝
1,深浅拷贝都是对源对象的复制,占用不同的内存空间。2,不可变类型的对象,对于深浅拷贝毫无影响,最终的地址值和值都是相等的。3,可变类型:=浅拷贝: 值相等,地址相等copy浅拷贝:值相等,地址不相等deepcopy深拷贝:值相等,地址不相等...
2018-07-01 19:57:00 217 1
原创 python写入csv文件的几种方法总结
最常用的一种方法,利用pandas包import pandas as pd#任意的多组列表a = [1,2,3]b = [4,5,6] #字典中的key值即为csv中列名dataframe = pd.DataFrame({'a_name':a,'b_name':b})#将DataFrame存储为csv,index表示是否显示行名,default=Truedatafra...
2018-06-18 19:04:00 48
原创 Python 能做什么?
Python 能做什么?Python具有简单、易学、免费、开源、可移植、可扩展、可嵌入、面向对象等优点,我所关注的是网络爬虫方面,2018即将到来,我准备步入python的世界。Hello,world!一、Web应用开发服务器端编程,具有丰富的Web开发框架,如Django和TurboGears,快速完成一个网站的开发和Web服务。典型如国内的豆瓣、果壳网等;国外的Google、D...
2018-06-05 15:09:00 37
原创 极验滑块验证的使用
# 爬取河南企业信用信息公示系统为案例 # 案例网址 http://gsxt.haaic.gov.cn/index.jspx下面这个选项一定要勾选极验打码要的参数要爬取数据所在的页面根据上面的截图然后找到相对应的菜蔬 然后下面这个代码就可以实现打印list页面的源代码 ,剩下的就是用解析器解析的部分。import requestsimport jsonfrom...
2018-05-15 20:01:00 159
原创 python 加密解密(base64, AES)
1. 使用base64s1 = base64.encodestring('hello world')s2 = base64.decodestring(s1)print s1, s2结果aGVsbG8gd29ybGQ=hello worldBase64编码,64指A-Z、a-z、0-9、+和/这64个字符,还有“=”号不属于编码字符,而是填充字符。为什么发明这...
2018-04-20 13:47:00 66
原创 Python 实习遇见的各种面试题
Python 语法说说你平时 Python 都用哪些库==和is区别。==是比较两对象的值,is是比较在内存中的地址(id),is相当于id(objx) == id(objy)。深拷贝和浅拷贝。# 浅拷贝操作只会拷贝被拷贝对象的第一层对象,对于更深层级的只不过是拷贝其引用,如下例中 `a[2]`# 和 `lst[2]` 这两个对象为第二层,实际上...
2018-04-19 20:45:00 98
原创 结巴分词详细讲解
jieba转:https://github.com/fxsjy/jieba“结巴”中文分词:做最好的 Python 中文分词组件。特点支持三种分词模式:全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;精确模式,试图将句子最精确地切开,适合文本分析;搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。...
2018-04-19 13:37:00 122
原创 BeautifulSoup 用法
一、标签选择器1、子节点contents ,child(迭代器),2、子孙节点 descendants(迭代器)3、父节点 parent 4、祖节点 parents5、兄弟节点 next_siblings (下一个兄弟) previous_siblings(上一个兄弟)二、标准选择器1、find_all(name,attrs,recursive,text,**kwargs)n...
2018-04-15 19:32:00 50
原创 pyquery 的用法 --爬虫解析库
如果你对Web有所涉及,如果你比较喜欢用CSS选择器,如果你对jQuery有所了解,那么这里有一个更适合你的解析库——pyquery。接下来,我们就来感受一下pyquery的强大之处。1. 准备工作在开始之前,请确保已经正确安装好了pyquery。若没有安装pip install pyquery。2. 初始化像Beautiful Soup一样,初始化pyquery的时候,也需要传入H...
2018-04-14 12:54:00 118
原创 selenium 设置代理的话,可以使用这种方式,代码是我刚才测试过的,亲测可用...
from selenium import webdriverchrome_options = webdriver.ChromeOptions()chrome_options.add_argument('--proxy-server=http://171.37.135.94:8123')chrome = webdriver.Chrome(chrome_options=chrome_o...
2018-04-14 11:56:00 1313
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人