Python Selenium秒杀脚本小试牛刀 初次尝试写一个秒杀脚本是在2018.11月即将迎来双十一的时候,但由于当时没有深入探讨,所以最后不了了之,现在正值假期,我闲来无事,所以打算将这个功能完善一下。 最近传出消息,美团、淘宝加强对selemium自动化测试软件的封杀,加之个人经验,这个脚本平时使用还好,但如果真的在双十一这样的高峰购物时间点会无法使用,因为平台会出现对下单商品,加以二维码的检测,而在没有模型训练的前提下,很难突破二维 2019-09-19 笔记 #爬虫 #Python
两种优先搜索 深度优先搜索 深度优先搜索采用的是,从首节点出发,一直朝一个方向进行访问相邻节点,直到该方向无相邻节点可以访问为止,这时回到上一节点,从上一节点换一个继续访问,依次重复。直到访问到想要找到的节点,或所有节点全部访问完成。 深度优先搜索的算法模型为: 1234567void dfs(int step){ 判断边界 尝试每一种可能 for(i=1;i<n;i++){ 2019-09-14 笔记 #算法 #C++
编译原理笔记(1) 因为参加了CCF的认证考试,加之这假期事情比较少,所以决定静下心来学习几个算法,按照CSP网站上的题目去做,第二道题便是多项式求和。以前在数据结构课上,便了解过多项式求和利用的是栈这个数据结构。不过一直以来遇到需要自己实现的数据结构,我便有点犯怵。不过这次既然决定学习了,所以便决定解决这个问题。 要求如下: ‘+’、‘-’、‘x’、‘/’ 分别表示加减乘除四个基本操作 ‘(’、‘)’分别表示左右 2019-09-14 笔记 #算法 #C++
数据结构:基础部分 算法: 算法是规则的有限集合,是为了解决特定问题的方法 特性: 1.有穷性、2.确定性、3.可行性、4.零或多个输入、5.一或多个输出 设计要求: 1.正确、2.可读、3.健硕、4.效率与空间 算法效率的度量: 算法中基本操作重复执行的次数记作:T(n)=O(f(n)),称为时间复杂度 一般来说他是最深层循环语句的执行次数的近似。 例如: 123456789for (i=2;i<=n;i++ 2019-09-14 笔记 #算法 #C++
数据结构:线性表(1) 线性结构特点: 1.存在唯一的第一个“数据元素”。 2.存在唯一的最后一个“数据元素”。 3.除第一个元素外,集合中元素存在唯一后继,除最后一个元素外,集合中元素存在唯一前驱。 线性表: 1.一个线性表是n个数据结构的有序集合 2.线性表中数据元素的个数称为线性表的个数,n=0时称为空表 线性表基本操作: 结构初始化 InitList(*L) 操作结果:构造一个空的线性表 L 销毁结构 Destr 2019-09-14 笔记 #算法 #C++
数据结构:线性表(2) 顺序存储: 以元素在计算机内的“物理位置”相邻来表示线性表中的数据元素的逻辑关系。 并以表中第一个元素的存储位置作为线性表的基地址。 LOC(ai ) = LOC(ai-1 ) + C LOC(ai ) = LOC(a1 ) + (i-1)×C 线性表顺序存储结构的特点 1.逻辑上相邻的元素,其物理位置也相邻; 2.可随机存取表中任一元素; 3.必须按最大可能长度预分存储空间,存储空间利用率低, 2019-09-14 笔记 #算法 #C++
数据结构:线性表(番外) 静态链表: 有时可以借助一维数组来表示线性链表 12345678//------线性表的静态单链表存储结构-------#define MAXSIZE 1000typedef struct{ ElemType data; int cur;}component,Slinklist[MAXSIZE] 数组的一个分量表示一个结点,同时用游标(cur)代替指针指示结点在数组中的位置。在 2019-09-14 笔记 #算法 #C++
最短路径 计算图的最短路径有几种经典的算法: 弗洛伊德(Floyd)算法 迪杰斯特拉(Dijkstra)算法 贝尔曼福德(Bellman-Ford)算法 SPFA 算法 弗洛伊德算法 弗罗伊德算法的思想来自于动态规划。 基本思路为: 我们知道若给定任意结点 A、B,若想使两点之间的距离减小只有引入第三个点。 首先引入 结点 1 ,是否能使任意两个结点之间距离缩短呢?若能则更新距离。接着引入 结点 2 2019-09-14 笔记 #算法 #C++
百度竞价排名小工具 众所周知百度盈利的一个很重要的途径是广告的竞价排名 商家想要向受众推销自己的产品,可以借助百度这样一个平台,但百度的竞价排名并不是一成不变的,商家想要实时观察百度对自己产品的推广情况,我作为爬虫技术的入门者,课外时间和自己的同学开发了这样的一个小工具。 该工具借助python的requests库以及lxml解析库实现主要功能,通过tkinter库实现图像界面,threading库实现多线程。同时 2019-09-14 笔记 #爬虫 #Python
Iverilog & GTKWave 一直都因为太过懒惰,没有更新网站的文章。 正好最近学校小学期的任务是,进行VerilogHDL语言的学习,需要安装可以编译该语言的软件,课上学习使用的vivado,当时学的时候就是云里雾里,现在需要用到了,打算在自己的电脑上安装一个,看到软件大小10.4G,果断放弃。 一顿搜索引擎,发现大家与我意见一致,vivado对我们来说确实是屠龙刀了。 更好的选择是 Iverilog 加上 GTKWave 2019-09-14 杂 #软件