![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python
文章平均质量分 74
yangtom249
这个作者很懒,什么都没留下…
展开
-
selenium 遇见 element not interactable
在windows环境下使用selenium能正常运行抓取内容,但在linux环境下却报错,Message: element not interactable,很多解决思路都是延迟加载等之类的,但不能完全解决问题。当切换操作系统环境,出现Message: element not interactable错误时,优先考虑使用execute_script原创 2024-02-29 15:54:18 · 346 阅读 · 0 评论 -
Django数据迁移命令
Django数据迁移命令:makemigrations、sqlmigrate、migrate原创 2023-01-13 15:11:07 · 2428 阅读 · 0 评论 -
Python3和Django的单元测试示例
unittest是python自带的单元测试框架,unittest框架是受到 JUnit 的启发,与其他语言中的主流单元测试框架有着相似的风格。支持将测试样例聚合到测试集中,并将测试与报告框架独立。unittest 通过面向对象的方式支持的重要概念,包括TestFixture、TestCase、TestSuite、TestRunnerdjango.test.TestCase是在unittest.TestCase基础上的二次封装,并且提供Client类用于模拟多种请求的发送测试。原创 2022-12-20 15:49:44 · 703 阅读 · 1 评论 -
python源码编译为.so文件
Cython不仅是python使用广泛和高效的解释器,也是python源代码的加密工具。Cython加密源码的过程:1、将.py编译为.c文件2、将.c文件编译为.so或者.pyd原创 2022-10-08 10:29:28 · 652 阅读 · 1 评论 -
Django调用Nameko微服务使用简介
Nameko is a framework for building microservices in Python.The example above requires RabbitMQ, because it’s using the built-in AMQP RPC features.Django REST framework is a powerful and flexible toolkit for building Web A原创 2022-04-06 15:03:38 · 4019 阅读 · 1 评论 -
uwsgi部署配置apscheduler随项目自动启动
django项目中使用了apscheduler的定时任务框架,开发阶段通过python manage.py runserver 0.0.0.0:8000启动项目时,apscheduler可以自动启动。但部署生产环境通过uwsgi启动项目,apscheduler定时任务没有随项目的启动而自动启动,当通过浏览器打开登录网页,定时任务才启动。一、初始化启动任务代码在__init__.py文件中编写任务初始化# 初始化函数def init_task(): print('------------ini原创 2022-03-29 09:14:22 · 898 阅读 · 0 评论 -
Elastic Stack之用户认证
Elastic Search开启用户认证,包括增加安全配置项【xpack.security.enabled: true】、给内置用户设置密码【elasticsearch-setup-passwords interactive】等,最后使用浏览器等验证效果。原创 2021-11-19 16:02:24 · 2073 阅读 · 0 评论 -
Windows环境部署django项目(apache+mod_wsgi)
Windows环境部署django项目(apache+mod_wsgi)注意:Windows的操作系统位数,python的位数,mod_wsgi的位数需要保持一致1、python版本查看,关注点:MSC版本号19002、下载安装apache对应版本;配置httpd.conf3、安装mod_wsgi;配置httpd.conf原创 2021-11-05 15:59:20 · 781 阅读 · 0 评论 -
python实现文件上传
python实现文件上传,同时实现上传文件名后缀添加回车符(\n),顺便验证了CVE-2017-15715漏洞。关于漏洞详情参见:https://vulhub.org/#/environments/httpd/CVE-2017-15715/原创 2021-09-10 10:23:30 · 1740 阅读 · 0 评论 -
Django文件上传与下载使用纪要
Django文件上传与下载使用纪要Storage,可以实现对文件名称的修改,对文件内容的二次处理等原创 2021-08-17 15:56:41 · 264 阅读 · 0 评论 -
神经网络之CNN
卷积神经网络(Convolutional Neural Networks, CNN)是计算机视觉技术最经典的模型结构,主要知识点包括:卷积、池化、激活函数、批归一化、丢弃法等。卷积神经网络对特征的提取,既能提取到相邻像素点之间的特征模式,又能保证参数的个数不随图片尺寸变化。典型的卷积神经网络结构中,在输入图片上使用多层卷积和池化层组合,在网络的最后通常会加入一系列全连接层,ReLU激活函数一般加在卷积或者全连接层的输出上,网络中通常还会加入Dropout来防止过拟合。原创 2021-03-11 11:56:33 · 736 阅读 · 1 评论 -
机器学习之神经网络
神经网络中最基本的成分是神经元(neuron)模型。在生物神经网络中,每个神经元与其他神经元相连,当神经元的电位超过"阈值" (threshold),它就会被激活, 即"兴奋"起来,向其他神经元发送化学物质,从而改变其他神经元内的电位。Sklearn提供的是伯努利限制玻尔兹曼机(BernoulliRBM),实现的训练算法被称为随机最大似然(Stochastic Maximum Likelihood )或持续对比发散(Persistent Contrastive Divergence )原创 2021-03-06 16:50:56 · 1055 阅读 · 0 评论 -
机器学习之概率图模型
概率图模型(probabilistic graphical model)是一类用图来表达变量相关关系的概率模型。第一类是使用有向无环图表示变量间的依赖关系,称为有向图模型或贝叶斯网(Bayesian network); 第二类是使用无向图表示变量间的相关关系,称为无向图模型或马尔可夫网(Markovnetwork)。原创 2021-02-23 11:22:39 · 368 阅读 · 0 评论 -
机器学习之半监督学习
让学习器不依赖外界交互、自动地利用未标记样本来提升学习性能,就是半监督学习(semi-supervised learning)。sklearn库提供了两种标签传播模型: LabelPropagation 和 LabelSpreading ,以及SelfTrainingClassifier类原创 2021-02-22 22:16:33 · 883 阅读 · 0 评论 -
机器学习之特征选择与稀疏学习
从给定的特征集合中选择出相关特征子集的过程,称为"特征选择" (feature selection)。作用:一是解决维数灾难问题,二是去除不相关特征降低学习任务的难度。处理高维数据的两大主流技术:特征选择、降维。原创 2021-02-21 17:37:13 · 1664 阅读 · 1 评论 -
机器学习之降维与度量学习
线性降维方法假设从高维空间到低维空间的函数映射是线性的。k 近邻(k-Nearest Neighbor)学习是一种常用的监督学习方法,使用某种距离算法找到K个最近的样本,基于K个邻居进行预测(近朱者赤近墨者黑)。主成分分析(Principal Component Analysis)是最常用的一种降维方法,用于提取数据的主要特征分量。主成分分析是一种无监督的线性降维方法,有监督线性降维方法最著名的是线性判别分析(LDA)。原创 2021-02-21 12:58:25 · 485 阅读 · 1 评论 -
机器学习之集成学习
集成学习(ensemble learning)通过构建并结合多个学习器来完成学习任务。集成方法的目标是把多个使用给定学习算法构建的基估计器的预测结果结合起来,从而获得比单个估计器更好的泛化能力/鲁棒性。集成学习方法大致可分为两大类:个体学习器间存在强依赖关系、必须串行生成的序列化方法;比如:Boosting个体学习器间不存在强依赖关系、可同时生成的并行化方法。代表是Bagging 和"随机森林" (Random Forest)原创 2021-02-20 22:32:18 · 302 阅读 · 0 评论 -
机器学习之贝叶斯分类器
贝叶斯决策论(Bayesian decision theory)是概率框架下实施决策的基本方法。对分类任务来说,在所有相关概率都己知的理想情形下,贝叶斯决策论考虑如何基于这些概率和误判损失来选择最优的类别标记。GaussianNB 实现了运用于分类的高斯朴素贝叶斯算法。MultinomialNB 实现了服从多项分布数据的朴素贝叶斯算法。ComplementNB实现了补充朴素贝叶斯(CNB)算法。原创 2021-02-20 15:47:45 · 4534 阅读 · 0 评论 -
机器学习之层次聚类
层次聚类(hierarchical clustering)试图在不同层次对数据集进行划分,从而形成树形的聚类结构。数据集的划分可采用"自底向上"的聚合策略(AGNES),也可采用"自顶向下"(DIANA) 的分拆策略。Sklearn库内两种层次聚类算法:AgglomerativeClustering 和 Birch类的代码实现。原创 2021-02-19 15:01:44 · 536 阅读 · 1 评论 -
机器学习之密度聚类(DBSCAN)
密度聚类亦称"基于密度的聚类" (density-based clustering) ,此类算法假设聚类结构能通过样本分布的紧密程度确定。DBSCAN(Density-Based Spatial Clustering of Applications with Noise)是一种著名的密度聚类算法。通常情形下,密度聚类算法从样本密度的角度来考察样本之间的可连接性,并基于可连接样本不断扩展聚类簇以获得最终的聚类结果。原创 2021-02-19 12:05:30 · 4283 阅读 · 0 评论 -
机器学习之K均值的SSE和轮廓系数
SSE(sum of the squared errors)是对簇松散度的衡量,作为目标函数其实是一个严格的坐标下降(Coordinate Decendet)过程。SSE不能保证找到全局最优解,只能确保局部最优解。轮廓系数法结合了聚类的凝聚度(Cohesion)和分离度(Separation),用于评估聚类的效果。指标:内部距离最小化,外部距离最大化。平均轮廓系数的取值范围为[-1,1],系数越大,聚类效果越好。原创 2021-02-19 09:43:06 · 10195 阅读 · 1 评论 -
机器学习之原型聚类算法(K均值和高斯混合)
原型聚类算法是假设聚类结构能通过一组原型进行刻画,通常情形下,算法先对原型进行初始化,然后对原型进行迭代更新求解。采用不同的原型表示、不同的求解方式,将产生不同的算法。K均值和LVQ算法的主要差异是更新原型向量的方法,K均值是根据分配到簇内的所有样本计算新的均值向量;LVQ是随机抽取一个样本,找到与其最近的原型向量,如果标记相同,则计算出更靠近随机样本的新原型向量,否则相反计算出更远的新原型向量。K均值、LVQ 用原型向量来刻画聚类结构,高斯混合聚类采用概率模型来表达聚类原型。原创 2021-02-18 21:54:25 · 2052 阅读 · 2 评论 -
机器学习之决策树
决策树(decision tree) 是一类常见的机器学习方法。顾名思义,决策树是基于树结构来进行决策的,其基本流程遵循简单且直观的"分而治之" (divide-and-conquer) 策略。决策树学习的关键是如何选择最优划分属性,使得分支结点的"纯度" (purity) 越来越高。决策树是一种用来 classification 和 regression 的无监督学习方法。Sklearn库中类DecisionTreeClassifier分类算法,类DecisionTreeRegressor 回归算法。原创 2021-02-17 21:36:28 · 292 阅读 · 1 评论 -
机器学习之线性判别分析LDA
线性判别分析(Linear Discriminant Analysis, 简称LDA)是一种经典的线性学习方法,LDA算法既可以用来监督式的降维,也可以用来分类。LDA思想:给定训练样例集,设法将样例投影到一条直线上,使得同类样例的投影点尽可能接近、异类样例的投影点尽可能远离。在Sklearn库中逻辑回归模型使用 LinearDiscriminantAnalysis类,其求解器(solver)可使用的优化算法,包括svd(奇异值分解) 、lsqr(最小二乘)和 eigen(特征分解)。原创 2021-02-16 23:22:17 · 524 阅读 · 1 评论 -
机器学习之逻辑回归(对率回归)
线性回归模型帮助我们用最简单的线性方程实现了对数据的拟合,即实现了对连续值的预测。那怎么预测离散值(分类)呢?在数学意义上,就是找到一个单调可微函数将分类任务的标记与线性回归模型的预测值相关联。形似S的Sigmoid函数可以实现将连续的预测值转换为离散的预测值。对于二分类任务,当线性预测值大于零,则输出离散值为正例;当线性预测值小于零, 则输出离散值为反例。原创 2021-02-16 17:22:19 · 4822 阅读 · 1 评论 -
机器学习工具之sklearn库
scikit-learn是基于 Python 语言的机器学习工具,简称sklearn。它是SciPy的扩展,建立在Numpy和matplolib库的基础上。sklearn包括了分类,回归,降维和聚类等四大机器学习算法,还包括了特征提取,数据处理和模型评估者三大模块。特点 •简单高效的数据挖掘和数据分析工具 •开源,可商业使用 - BSD许可证原创 2021-02-15 23:14:26 · 2793 阅读 · 0 评论 -
Python搭建简易静态HTTP服务器
为了给同事临时共享文件,我通过Python命令快速搭建了局域网HTTP静态服务器供其下载。关键命令是:python -m http.server原创 2020-11-14 16:11:37 · 611 阅读 · 0 评论 -
pip安装whl文件的说明记录
pip 是一个安装和管理 Python 包的工具,wheel 本质上是一个 zip 包格式(文件后缀 whl ),用于 python 模块的安装。一般在项目中,pip 利用 requirments.txt 来实现依赖包的安装。但有些情况下会出现错误,windows下开发时,比较常见的是VC++缺失。此时可使用whl文件安装。pip._internal.pep425tags.get_supported获取文件适配原创 2020-08-17 16:34:43 · 1591 阅读 · 3 评论 -
medusa测试网站弱口令简单示例
Medusa(美杜莎)是一个速度快,支持大规模并行,模块化的爆力破解工具。可以同时对多个主机,用户或密码执行强力测试。关于http模块的说明:The HTTP module tests accounts against HTTP/HTTPS services using BASIC-AUTH, integrated windows authentication (NTLM) and digest (MD5 and MD5-sess).原创 2020-08-05 11:37:11 · 912 阅读 · 0 评论 -
Django REST framework简单示例
简单来说,使用Django REST framework需要涉及4个关键类> model:模型,定义数据表> sariaizers:序列化,相当于form> viewsets:视图> router:路由器,注册url地址原创 2020-07-30 16:33:54 · 329 阅读 · 2 评论 -
execjs执行接js报编码错误的变通解决方法
execjs执行接js报'gbk'编码错误的变通解决方法baidu后发现,大家一致看法是修改python原文件中的编码,感觉处理过度。思考后决定使用字符串替换思路,比如:将中文字符串生硬的替换为个性化英文字符串(比如:key-123-abc,防止替换错误)原创 2020-07-27 17:29:53 · 561 阅读 · 0 评论 -
Json web token (JWT)简介
JSON Web Token(JWT)是一个开放的标准(RFC 7519),它定义了一个紧凑且自包含的方式,用于在各方之间作为 JSON 对象安全地传输信息。JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties.原创 2020-07-12 12:26:01 · 253 阅读 · 0 评论 -
在python环境下使用selenium + chromedriver截屏网页
在python环境下使用selenium和chromedriver工具,自动将网页内容进行截屏保存。原创 2020-06-27 10:01:57 · 1989 阅读 · 0 评论 -
Pyinstaller打包数据文件或配置文件的简单说明
我本地程序文件说明:同一个目录【E:\pytest\student】下两个文件,一个.py,一个.txt文本文件;py程序读写txt文件。我们的py程序也许用到了其他配置文件(properties/conf),如何将这些文件也打包到执行程序中呢?在spec文件中,手工写入数据文件等路径,然后通过spec生成可执行程序。原创 2020-06-07 18:52:28 · 7327 阅读 · 0 评论 -
模块引入失败,ModuleNotFoundError: No module named xxx
在PyCharm编辑器中,引入模块时,可正常运行。但使用命令行脚本时,报错:ModuleNotFoundError: No module named原创 2020-06-06 10:24:15 · 1790 阅读 · 0 评论 -
在nginx环境使用uwsgi部署Django项目
本文是在centos7下的一次部署试验,简要记录 Django + uwsgi + Nginx 部署过程,主要思路是各个服务能独立运行,再层层递进、逐步加码完善。首先在服务器环境下启动Django进行开发测试,然后集成在uwsig环境下测试,最后配置在nginx服务中。原创 2020-05-24 17:39:07 · 234 阅读 · 3 评论 -
Scrapy抓取免费ip代理地址的示例
Scrapy是一个用于爬取网站并提取结构化数据的应用程序框架,可用于各种有用的应用程序,例如数据挖掘,信息处理或历史档案。本文主要描述从某IP代理网站抓取内容的代码示例,免费代理IP时效性很差,仅供大家学习试用。并将抓取数据保存到redis缓存中,便于后续使用。原创 2020-05-24 16:14:59 · 1144 阅读 · 0 评论 -
pip更改下载源仓库为国内镜像
pip命令指定镜像源PyCharm中修改下载仓库源为清华和阿里原创 2020-05-17 16:23:08 · 2166 阅读 · 0 评论 -
Django自带的管理员功能
本文主要描述Django创建管理员账号和注册具体应用到管理功能原创 2020-05-17 15:44:39 · 1325 阅读 · 0 评论 -
Django的数据库配置-MySql
在Django中进行MySql数据库配置,初始化自带表,以及创建polls应用表的模型。原创 2020-05-17 15:25:53 · 339 阅读 · 1 评论