自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 求解输出调节方程

考虑如下系统{x˙=Ax+Buy=Cx\begin{cases}\dot{x} =Ax+Bu\\y=Cx\end{cases}{x˙=Ax+Buy=Cx​{υ˙=Sυξ=Fυ\begin{cases}\dot{\upsilon } =S\upsilon \\\xi =F\upsilon \end{cases}{υ˙=Sυξ=Fυ​其中A∈Rn×n,B∈Rn×m,C∈Rp×n,S∈Rq×q,F∈Rp×qA\in \mathbb{R}^{n\times n} ,B\in \mathbb{R}^

2020-11-09 10:07:29 1864 5

原创 Matlab 黎卡提方程

在自定控制原理中,我们会经常使用李雅普诺夫稳定性分析方法来对一个系统的稳定性进行分析。在稳定性分析当中经常会出现两个方程

2019-04-24 21:23:06 14146 4

原创 Python爬取岗位数据并分析

学Python也将近大半年了,最终也是为了能够找到一个待遇好点的,薪资高一点的工作,使得自己以后不愁吃穿,过点体面的生活。那想应聘Python岗位应该如何选择,其有何要求,薪资怎么样,这些都是我们会去关注的问题。我们在这里选择对前程无忧上关于Python的工作岗位进行抓取。本来是想去抓上万条数据的,可是点击Python关键字搜索后的25页左右,发现招聘岗位并无python关键词,只是在点击进去的...

2019-03-15 20:40:48 11011 20

原创 python requests.post请求404问题

python接口测试requests发送post请求404

2022-09-03 17:04:51 3919

原创 @BeforeMethod和@AfterMethod和Selenium使用NoSuchSessionException异常

Selenium可用于编写UI自动化测试脚本,其可以结合TestNG一起使用。熟悉TestNG的人都知道,@BeforeMethod和@AfterMethod是当前测试类中每个测试用例方法运行之前运行和每个测试用例方法运行结束之后运行按照之前测试类的方法,经常是一个测试类中只有一个测试方法,所以会把打开浏览器请求页面的方法写在@BeforeMethod中,同时关闭浏览器的方法写在@AferMethod中,直到今天尝试在一个测试类中写两个测试方法时,突然暴露出了问题,大致的代码如下public class

2022-05-28 19:49:24 1883

原创 SpringBoot AOP使用

AOP即面向切面编程,其存在的目的就是为了解耦,通过AOP的实现,可以让业务逻辑只关心业务本身,而不用在意其他的事情,无需改动原有代码,实现无侵入增加部分能力。在系统日志处理、系统事务处理、系统安全验证、系统数据验证等多个场景中都有可能使用到。在关于AOP的描述中,有如下几个比较重要的概念:通知:Advice,给目标方法添加额外操作步骤,即拦截到连接点之后要执行的方法连接点:JoinPoint,可以添加额外步骤的地方,基本上每个方法前后都可以是连接点切面:Aspect,横切面对象,即通知和切点的结合

2021-11-14 21:46:06 621

原创 SpringBoot热部署

SpringBoot热部署平常在编写代码的时候,经常会遇到一个问题,我在某次运行验证时,发现某行的代码编写错误,需要对代码重新编写,代码修改后,需要重启项目才能生效,当项目比较小的时候,启动时间比较短,但是当项目较大时,启动时间将会变得很长。为避免大多数时间在等待重启项目上,可引入热部署,即修改了代码后无需手动重启,工具会快速的自动重启。并不是说热部署不用重启,只是由手动变为自动,且启动较快。热部署最主要的原理是使用两个ClassLoader,一个用于加载那些不会改变的类,另一个加载会更改的类,称为r

2021-11-11 21:45:48 129

原创 Java执行Mysql数据库备份/还原命令

在实际系统当中,有时会出现数据丢失的情况,为避免此类情况的发生,就需要我们对数据库文件进行备份,从而在意外发生时,可及时恢复。由于以前执行Mysql命令行都是在终端中执行的,而没有尝试过在java中如何执行。在最近的学习当中,正好遇到了这个内容,就记录一下,方便以后查找。在备份数据的时候需要注意,最终保存的文件是.sql文件,在执行恢复的时候,执行的也是.sql文件。public class BackupAndRestore { /** * 备份数据库到指定到文件中 *

2021-07-24 11:00:24 554

原创 滑动验证码处理 java实现

关于滑动验证码的解决方法,网上已经有很多详细的描述了,但是绝大多数都是用的python,这边就扩充一下java,但是验证准确率不是100%,只是强调一下在解决中可能会出现的问题。注意点元素截取元素截图时,尽可能不要通过截取整个屏幕,然后截图子图的方式来截取验证码,这样会因为显示分辨率导致位置偏差存在,无法获取验证码的准确位置,可参考 https://blog.csdn.net/weixin_44578172/article/details/111387534java中直接调用元素的getScree

2021-03-30 10:51:22 1627 2

原创 八皇后 深度优先 广度优先 位运算

对于八皇后问题,大家应该都不陌生,只要接触过算法的,必然都会接触到这到题。对于八皇后的问题不在此叙述,可以直接百度。对于八皇后问题的解决思路,可以直接根据题目的要求便可以得到。总的来说,就是下一个皇后放置的点不能在上图所画的实线当中。这里我仅考虑有多少种放置方法,而不考虑如何去放置。深度优先搜索DFS版本的解法应该是最普遍,直接通过回溯便可以解决。def dfs(queues, xy_sum, xy_dif, num): global count row = len(queues)

2020-07-22 20:19:03 1860

原创 Python 内螺旋矩阵

所谓内螺旋矩阵,即矩阵中的元素,以内部某点为起点,依据逆时针或顺时针的顺序依次旋转将值逐渐增加,并最后旋转到矩阵的最外围。这篇博客所考虑的旋转方式为逆时针旋转,因为网上关于顺时针的已经有了,也就没有必要再去写了。我们以一个4×44\times 44×4的矩阵为例子,如下所示,[10987112161234513141516] \begin{bmatrix}10 & 9 &a...

2019-11-09 17:53:00 1791

原创 Python 关于列表中*使用的问题

最近在学算法,对算法进行部分修改的时候,无意间遇到了一个列表的问题,那就时列表中*的使用,对此记录总结一下。当我们想要生成一个嵌套的列表的时候,为了减少代码量,在初始化时,会写成如下的形式(我就是这样的)li = [[1] * 2] * 3 print(li) 输出结果为[[1, 1], [1, 1], [1, 1]]而当我们想要对其中的某些子元素进行修改时,我们会天真的写成如...

2019-10-28 21:42:16 490

原创 监督学习算法-k近邻

k近邻(k-Nearest Neighbor Method, k-NN)k-NN是一种搜索最近邻的算法,当输入一个未知的数据时,该算法根据邻近的k个已知数据来对该数据进行预测。k-NN算法原理k-NN分类计算测试数据与各个训练数据之间的距离按照距离的递增关系进行排序选取距离最小的k个点确定k个点所在类别的出现频率返回前k个点中出现次数多的类别作为预测结果(单一kNN的预测结果就是...

2019-06-28 17:27:41 411 1

原创 监督学习

分类与回归在监督机器学习问题中主要有两种,分别为分类(classification)和回归(regression)。分类分类问题的目标是预测类别标签,这标签来自预定于的可选列表。分类问题可分为二分类(在两个类别之间进行区分的一种特殊情况),和多分类(在两个以上的类别之间进行区分)。对于二分类问题,我们可以举例为,判断一封电子邮件是否是垃圾邮件,其结果只有两种,是和不是。对于多分类问题,我们...

2019-05-24 10:58:01 225

原创 机器学习笔记

最近正在学习《Python机器学习基础教程》,在阅读过程中进行记录以增加理解和加深印象。在机器学习中,根据训练方法的不同,机器学习可以分为四类,分别为监督学习(Supervised learning)、无监督学习(Unsupervised learning)、半监督学习(Semi-supervised learning),强化学习(Reinforcement Learning)。关于上述四种...

2019-05-10 21:26:26 119

原创 python反爬虫 自定义字体3

上一篇博客讲的是针对具有一些固定映射的自定义字体,即能够使用该固定映射来找到当前网页所使用的自定义字体的映射表,从而替换使用。然而,在一些网站中,其根本找不到什么规律,每次都是随机的字符映射表,本篇博客将以猫眼为例,讲述遇到这种随机的字符映射表,我们应该处理。首先,我们根据之前说讲的方法,找到当前网页所使用的自定义字体文件的地址,并将其转化为xml文件进行查看,如下:字体 1字体 2...

2019-05-04 16:02:47 426 1

原创 python反爬虫 自定义字体2

上一篇讲的是网页中使用固定的字体映射表,也就是网页中显示的数据编码和真实数据的映射在一段时间内不会发生变化。但是,有的网页中对应的映射会随时发生变化,我们以东方财富网为例,下图是我们一开始所抓取得到的部分信息我们在不同的时间内分别下次其网页中使用的字体文件,并将其转化为xml文件来进行查看。字体1字体2会发现每个字体文件中的code都会发生变化,并且name也是一...

2019-04-28 21:10:07 572

原创 python反爬虫 自定义字体1

在进行数据抓取时,有些网页会使用一些特殊的字符来将我们所需要的数据进行替换显示。我们以实习僧网站为例,在网页中我们可以看到我们所要的数据,但是当我们查看源码时,他却显示的是,显然,该网页把我们所需要的数据给隐藏起来了。我们不妨继续查看源码,会发现有如下的代码从上图中我们可以知道,网页中是把我们所需要的数据给用别的类似代码的东西给替换掉了,我们只要能够将它反向给替换回来就能够得到我们的数据了...

2019-04-27 12:53:24 940

原创 CSS反爬虫 大众点评

在爬虫时,我们会经常遇到一些反爬虫的例子,网站上通过反爬虫便使得我们无法获取真实的数据信息,有兴趣的同学可以看下这篇文章(点我呀),其中介绍了多种的反爬虫和对应的策略。在大多数数据较多的网站中,其经常会使用CSS反爬虫机制来阻止我们对其中信息的访问,因此想要获取我们需要的数据信息,就必须要对这种反爬虫加密进行破解。我们以大众点评中的点评数量为例,来讲解一下其具体的破解方法。我们首先在浏览器种打...

2019-04-23 11:01:50 1475 3

原创 python实现多线程输出123123

昨天师兄线上面试某公司C++程序员实习生,作为师弟的我当然有幸见到了三道编程题。其中印象最深是其中一道多线程的问题,其要求是同时开启三个线程,分别只能输出1,2,3,并让三个线程按顺序输出打印123123123…这道问题简单来说就是一种红绿灯,我们先让红灯亮,过一段时间后黄灯亮,再过一段时间后绿灯量,以此类推。一般对于多线程而言,可以很容易的实现这三种颜色的切换,但是再不对其进行控制的话,他的执...

2019-04-18 21:50:03 3381

原创 Python 迭代器 生成器

在爬虫中我们会经常去使用生成器来得到数据进行保存,同时会使用for循环来迭代一个对象,来对我们需要的数据进行提取,我从以前所编写过的一些爬虫中截取部分来进行说明,那到底什么是可迭代对象,迭代器,生成器呢,他们之间又有什么区别呢?我们自己定义一个可迭代的类时,有时候只会定义__getitem__方法,而不去定义__iter__方法,...

2019-04-04 19:21:31 225

原创 Python 装饰器

最近在学Python的进阶知识,然后看到了装饰器,整理总结一下装饰器中的知识点以作备忘。在讲装饰器之前,有必要先提及一下Python中的闭包,因为装饰器的本质就是闭包,并且当我们在编写参数化的装饰器时,往往都会出现闭包。闭包维基百科中对于闭包的解释是这样的,在一些语言中,在函数中可以(嵌套)定义另一个函数时,如果内部的函数引用了外部的函数的变量,则可能产生闭包。闭包可以用来在一个函数与一组“...

2019-03-28 14:37:57 228

原创 Python 异步 协程 线程(池) 进程(池)

当我们在对某些网页进行抓取时,通常会抱怨程序运行时间太长,有时候一个10页的网页都有可能需要运行个一分多钟。其实在这一分多钟里,我们的程序大部分时间是在等待网页响应,也就是说当我们在抓取第一页时,程序需要等待这个第一页加载完毕然后再去提取数据,接着才能进行下一页的抓取,这就导致了过程阻塞。事实上,在等待响应的时候,我们可以去干其他的事情,比如再发送别的请求,或进行网页解析。这个时候,我们就可以通...

2019-03-03 13:35:06 1970

原创 Scrapy模拟登陆豆瓣抓取数据

上一篇文章中,我们使用requests.Session()来对豆瓣中的电影评论数据进行了抓取,虽然比较简单,但是现在各大公司在招聘员工时都需要熟悉Scrapy框架,因此,今天就来谈一谈如何用Scrapy来模拟登陆并对数据进行抓取创建项目在Scrapy中可直接用Scrapy命令来生产,命令如下:scrapy startproject Alita这里Alita是我们所创建的文件夹名称。创...

2019-02-26 08:53:35 3827 7

原创 抓取豆瓣电影,告诉你《阿丽塔:战斗天使》到底值不值得看

最近,有一部叫《阿丽塔:战斗天使》备受追捧。

2019-02-24 19:46:25 1200

原创 利用Session模拟登陆查询

利用Session模拟登陆查询requests提交表单session模拟登陆前不久,在网上找学校课表时,一不小心发现了这篇博客(作者居然是校友,莫名的感动),本着将南邮发扬广大,抱着学习的态度,决定对该作者的代码进行小小的补充,对python使用session模拟登陆进行介绍。为什么我们在第一次登陆某些网站后,再次刷新页面的时候却不要重新登陆?在这里面,有个神奇的东西,再帮我们维持着对话,它就...

2019-02-22 21:35:20 759

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除