自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 网易新闻 scrapy +selenium

利用scrapy框架进行网站内容的爬取,这个时候不可避免地就会遇到动态加载的数据。这个时候就需要与selenium结合起来,用selenium进行模拟浏览器登陆,获得动态加载的数据。具体地说是在下载中间件的那一步将相应数据进行处理,得到动态加载的数据,再将这个数据返回个spider。这一篇博客可能对这个原理部分讲的更清楚scrapy中selenium的应用获取网易新闻这个项目原教程链接是让我们能够将scrapy与selenium结合起来使用。我觉得最重要的是要理解下面这张图如果说能基本理解的话,也.

2020-10-31 23:13:18 272

原创 python 爬虫学习记录

这段时间一直断断续续的学习python爬虫,主要是想后面如果自己想要用一些数据的话有能力去获取并处理。在这里做一个记录。常见问题记录当学习到处理中间件请求的时候终端一直报错更换不同的IP有不同的错。一种是Connection was refused by other side: 10061: 由于目标计算机积极拒绝,无法连接。第二种是TCP connection timed out: 10060: 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。网上查看的解决方法很多是说防.

2020-10-31 17:16:04 240

原创 TCS的ILP建模

ILP(整数线性编程):除了目标函数和约束都是线性组合之外,变量的取值必须是整数TCS——Time-constrained scheduling(时间约束调度)RCS——Resource-constrained scheduling(资源约束调度)ASAP——as soon as possible (尽早调度)ALAP——as last as possible(最迟调度)先来一张图,左边ASAP,右边ALAP对于TCS与RCS的区别,可以从两点去理解1.起始条件不同:RCS,顾名思义,就.

2020-10-31 01:37:47 758

原创 pulp 示例2.A Set Partitioning Problem

高级硬件设计中的研究课题需要通过一系列约束(唯一起始时间约束、依赖约束和资源约束)来优化一个调度过程。所以就开始学习pulp。pulp官方网站,pulp是python的一个库,可以用来解决线性规划问题。首先复习一下优化模型的三要素:决策变量目标函数约束条件A Set Partitioning Problem这个问题主要去解决这样一类问题——有时候需要将一个大集合(set)划分为小集合(subset),使每一个item只属于一个subset,但同时还需要满足一些其他的约束。约束条件.

2020-10-28 13:38:58 572

原创 数据冒险与数据相关

相关是程序中的一种属性,某种给定相关是否会导致检测到实际冒险,这一冒险又是否会实际导致停顿,这都属于流水线结构的性质——计算机体系结构第五版 p112三种冒险在计算机体系结构当中,五级流水线当中有三种冒险1 控制冒险:现在应该执行哪条指令由上面的指令执行结果才能得出,现在PC中的值并不一定正确。2 数据冒险:现在需要的数据其结果来源于之前指令,而前面的指令还未将结果给出。3 结构冒险:现在需要的资源正在被占用。也就是说因为计算机本身硬件不够而导致的这里主要说明一下控制冒险与数据冒险的区别。控制

2020-10-27 20:54:42 3449

原创 局部历史和全局分支预测的理解

在阅读了《超标量处理器设计》这本书中有关局部历史分支预测和全局历史分支预测的部分之后,刚开始对于它们之间的区别还有些疑问,后面经过查看资料和多次阅读,对它们有了一些理解,在此记录一下。流水线中有无分支预测的比较无分支预测如果没有分支预测,在五级流水中,如果我们通过在DF(decode fetch)阶段添加比较器已经把分支相关指令(这里指beq)的实际执行阶段从EX(execute)阶段提前到DF阶段,这个做法就已将很好了。但当我们指令要跳转的话,那就需要浪费两个时钟周期。有分支预测如果一个分支.

2020-10-24 19:28:55 2994

原创 Python 中scrapy的安装

以前安装某个包都是直接pip install package,但当我直接pip install scrapy时,却出现了报错,原因是scrapy依赖python中其它的关键包,必不可少的就是lxml和twisted,scrapy安装的官方文档说明pip install lxml没有出现问题pip install twisted报错pip安装的原理就是去第三方管理网站,也就是我们说的源,去找对应的包,然后下载相应的代码和依赖,安装在python安装目录\Lib\site-packages\

2020-10-17 20:06:40 200 1

原创 selenium模拟登录12306

利用selenium模拟登录12306,但是12306的登陆要想模拟还挺难的,需要先进行坐标识别,识别出来之后还要在进行滑块拖动验证识别,这里做一下记录.这里的坐标识别是用的超级鹰,有时也会坐标识别出错,最后的一步滑动验证码识别现在做不了,不论是模拟滑动还是手动滑动都有问题。源代码如下(其中超级鹰的识别代码就不贴了)from selenium import webdriverfrom time import sleepfrom PIL import Imagefrom selenium.web.

2020-10-15 13:24:26 543 4

转载 多线线程梨视频下载

要用多线程的方法下载梨视频,但是由于一直梨视频视频的数据对应的url一直拿不到,开始的时候还直接访问了某个视频的ajax返回的url,是个没用的,后来基本上完全参考了一篇博客,才踉踉跄跄的把这个小视频下载完成。转载博客地址,在这里很感谢此博客的博主,去拿一个视频的对应的json解析出来然后构造出url这个自己目前都不知道是怎么得到的。from lxml import etreeimport requestsimport osimport randomfrom multiprocessing..

2020-10-13 21:22:50 227

原创 gdb中iogets.c: No such file or directory

开始学着用gdb,在设置断点之后出现Breakpoint 1, _IO_gets (buf=0x0) at iogets.c:32 32 iogets.c: No such file or directory.要调试的源代码如下/*bugging.c*/#include <stdio.h>#include <stdlib.h>static char buff [256];static char* string;int main (){ printf ("Please

2020-10-10 00:41:32 2495 2

原创 利用百度ocr简单模拟登录一高校网站过程记录

利用百度ocr中的api验证识别验证码中的文字进行模拟登录,此过程中验证码识别正确,但是模拟登录网页还是没有模拟登录上,显示验证码错误。

2020-10-09 20:14:59 275

原创 批量下载简历模板

利用python 中的requests库批量下载一个网站中的简历模板

2020-10-06 22:10:40 296

原创 kfc 商家地址获取

简单获取商家地址(kfc)学习源址基本的查找url,请求方式我也是在上面的链接中学到的,在此就不赘述了,只是重点分享和记录一下自己遇到的一些bug代码import requestsurl = 'http://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=keyword'header = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.

2020-09-30 00:06:15 497

原创 python函数参数——关键字参数和位置参数

关于这一部分的官方文档——Special parameters,从这份官方文档中可以看出,函数参数有三种类型——1、关键字参数;2、位置参数;3、两种都可以的参数。如下适用情况:官方文档中讲的很明白举一个例子,如果我们定义函数如下:def fun(*args, str): for i in args: print("tuple:", args) print("str:", str)fun("t1", "t2", "t3", str="str")这个函

2020-09-16 11:07:37 385

原创 c中不支持函数返回局部变量的地址

在做列表中的栈这道题时,突然对函数能否返回局部变量的地址,比如自定义函数中的一个指针有一些疑惑,于是用下面的几个小程序做了验证test1#include <stdio.h>#include <string.h>char * fun(){ char *str = (char *)malloc(100); scanf("%s", str); if(!strcmp(str, "push")) strcpy(str, "PUSH"); if(!str

2020-09-12 21:09:44 324 1

原创 pta上目前所遇到的一些坑

刚开始做这些题,用c写的,有的因为语法上或者是一些小细节的问题,导致题目本身逻辑没有问题,但却会出现两种情况:编辑器上的结果错误编辑器上的结果正确,提交全部错误下面来整理一下这个大二暑假断断续续做的pta上的题遇到的这些坑。一、语法上1、 scanf中没有给存储地址,就会出现异常退出的情况#include <stdio.h>#include <string.h>#include <stdlib.h>#include <math.h>i

2020-08-27 16:40:58 3135 1

原创 <string.h>中的memset函数

在做题时要对一个整型数组里面初始化一个固定的值,因为每次for循环都要初始化,就想着调用一个函数memset,这是文档中对这个函数的介绍,就是因为没有仔细理解括号里面的“解析为无符号字符”,而导致出现了下面的错误#include <stdio.h>#include <string.h>int main(){ int a[10] = {0}; memset(a, 2, 40); for(int i = 0; i < 10; i++){ pri

2020-08-20 13:01:14 514

原创 整型和浮点型的输出不能混用

在做PTA上面的题时,对于这道题1073 多选题常见计分法 (20分)题意挺简单的,自己在vscode中也马上写出来了,按照题目中的测试结果也看起来一模一样,可是提交就是有问题。#include <stdio.h>#include <stdlib.h>#include <string.h>#include <math.h>#include <ctype.h>int cmp(int *a, int *b){ return *a

2020-08-16 10:34:59 637

原创 数组的大小要足够

今天用c写题,之前申明字符串的时候,如果是字符数组的话,大小定义的都是刚刚够,如果输入四个字符的话,就是char *a[4], 理论上应该写成char *a[5]。但一直那样写也没问题,就没管最后的那个’\0’字符了,知道今天用到strcpy()函数时,发现了一个自己给自己整的大坑,具体如下没用strcpy()函数#include <stdio.h>#include <stdlib.h>#include <string.h>// int cmpInc(con

2020-07-20 00:29:37 226

原创 Django Admin管理工具创建超级用户(1146, “Table ‘test.auth_user‘ doesn‘t exist“)

当我们用Django来创建项目时,会发现在urls.py文件里自动创建了一个已有的路径,‘admin/’, 这一个就是Django自动创建的管理工具创建过程:刚开始的目录结构:已有的路径:现在启动服务器,进入地址http://localhost:8000/admin/,就可以看到下面的显示了(如果出错提示“table django_session not exists”, 那么执行先执行数据库迁移指令即可)现在问题来了,怎么登陆呢,这样想就可以了,登录的数据肯定是存在数据库中的,而我们并没

2020-07-01 18:55:50 2481

原创 ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot exec

今天遇到一个神奇的问题,就是用sql导出数据库的命令时,遇到了错误,错误信息提示如下:ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv option so it cannot execute this statement对于这个问题网上也说的很清楚,与这个变量有关,进入配置文件(my.ini)后修改一下即可。当我查看secure_file_priv变量时,发现是有路径的,但当我执行到处命令时,依然提

2020-06-29 19:16:31 221

原创 mysql查看表的字段,数据类型以及是否允许非空等

如果是想查看表中的列及其数据类型,可以用以下的方法select COLUMN_NAME ,DATA_TYPE from information_schema.COLUMNS where table_name = ‘表名’ and table_schema = ‘数据库名’;这是因为mysql中有一个数据库information_schema,这个数据库中有一个COLUMNS表,里面记录了所创建表的字段信息。可是如果想看这个字段是否允许非空的话,就要再选一个选项,也可以直接select * from

2020-06-28 15:54:52 2390

原创 用insert来创建新用户时提示错误

在用下面的命令创建时,提示出错这是因为配置文件(我的是my.ini)中这里规定了严格模式可以把这里的“,STRICT_TRANS_TABLES”删掉,然后就可以用上面的方法创建新用户了。一:删掉之后要保存重启mysql服务器。因为windows的net命令没有restart操作,所以要先关闭,再开启,关闭命令:net stop mysql启动命令:net start mysql二:如果提示服务名无效,像下面:说明我们安装的mysql服务名不是mysql,键入命令services.msc

2020-06-27 21:42:53 460

原创 一直提示语法错误

the right syntax to use near 'identified by ‘123’一直提示语法错误我的mysql server的版本是8.0之后的,想用grant命令来创建新用户,如下:起初以为是标点符号的问题,一直改,可是没用,最后发现新版的mysql不能用来创建新用户,所以得先创建用户,再授权。...

2020-06-27 20:57:17 416

原创 python django-admin.py startproject HelloWorld提示不能打开文件

对于报错是无法打开文件或目录的话,一般情况下就是路径给的不对初用Django,在python和Django也安装好的情况下,想用这个命令python django-admin.py startproject HelloWorld来创建第一个项目,但是却出错了,提示信息是can’t open file ‘django-admin.py’: [Errno 2] No such file or directory。查了一下才知道原因,python是操作,django-admin.py是路径,startproj

2020-06-25 01:32:58 1051

原创 Verilog函数传递的实参是wire型的

比如说下面的例子:其中top模块调用pc模块,刚开始模块调用时,可能会对传进去的实参的类型是否要与对应的形参类型相同有些疑问。这样一句话可能会解决所有疑问——输入端口可以由wire/reg驱动,但输入端口只能是wire;输出端口可以使wire/reg类型,输出端口只能驱动wire。**1.Verilog中如果没说明参数的类型,那么默认就是wire型的,这也就是为什么一般input的话都没有写类型,因为它只能是wire型的。**比如说上面的例子,如果我们把top模块中的clk变量类型改为reg型的,直

2020-06-19 21:19:13 911

原创 java中的继承与重写

在java中有重写,重载,覆盖这些名词,重写就叫覆盖,这两个只是名称不同,这里就统一称作重写。重载:在java的同一个类中,只针对于方法(类中的函数叫方法)而言的,它是指让同一个方法名可以来完成不同的工作,很多时候这些工作的功能基本相同,只是情况不同时,需要方法的返回值类型、参数列表中的参数个数、或参数类型不同,这个时候就用到重载了。重写:在子类继承父类时,子类中新增的变量或者方法与父类中的变量或方法名称相同,变量的值或者方法功能进行了改写,就叫重写。重写分为变量重写和方法重写。下面是一个重写的例子

2020-06-09 13:40:31 225

原创 无符号阵列乘法器构建补码阵列乘法器(logisim)

background这学期在的计算机组成原理的一个project,让用logisim构建一个补码阵列乘法器,看了同学推荐的mooc上老师的讲解才慢慢搞懂,对新手挺友好的,课程名称为计算机硬件系统设计,在这里附上链接计算机硬件系统设计具体的project利用logisim构建一个6 * 6的补码阵列乘法器,具有十一位输出。实现过程及原理思路:首先对于补码的运算来说,关键就是要将符号位与数值位区分开来,如果这个数是一个正数,那么就直接用数值位进行相应的运算,然后前面在加上符号位即可,但如果这是一个负数

2020-05-28 20:18:43 13728 3

原创 maven项目jar中没有主清单属性

背景学习java,然后老师布置实验作业,每次做实验都要用maven来进行管理,对新手来说不太友好,根本不知道啥是maven,大概就这样过了大概一个多月吧。终于用命令行的方式创建了maven项目(现在对maven的理解就是如网上所说的用于解决依赖关系,我觉得这个对于用Java做一个大型项目比较有用,像平时做实验写一个类就行的就只是形式上用用)命令行创建一个简单的maven项目具体的步骤可以去百度其他博客,这里说一下出现提示xxx.jar没有主清单属性(出现这个的主要原因是我们没有在配置文件中说明程序的主

2020-05-10 21:37:10 1623

原创 MIPS中lw指令运行时间最长

我们都知道,在MIPS指令级架构中,采用的都是定长指令,即就是每一个指令都是32位,分为R型(6, 5, 5, 5, 5, 6),I型(6, 5, 5,16),J型(6, 26), 在这所有指令中,是lw(存指令)运行时间最长,对于这个原因,从宏观上来理解,就是我们在内存中采用32个32位的通用寄存器来存和指令有关的东西,比如说是一个数组的话,我们只会在这个通用寄存器中将此数组的首地址存下来,要访...

2020-04-23 14:38:25 2068 1

原创 移码,阶码

我们都知道,计算机里有真值,原码,反码,补码,移码的概念。对于真值,原码,反码,补码的介绍,可以参照这篇文章 链接(这里面写的非常详细)现在我就重点讲一下移码,移码,就是一个二进制数的真值加上一个常数a,如果a > 0,那么就是表示这个数在数轴上向右移动a位。一般情况下,为了方便起见那么, (更准确的说是计算器中实际上的二进制位数),我们让a = 2^n。移码的作用:我们知道补码出...

2020-03-24 22:42:53 3510

原创 PC值的改变(相对寻址与绝对寻址)

我们知道,计算机中有很多的寄存器,他们是32位的,其中每一位的值要么是0要么是1。在汇编语言中,每一条要执行的指令都放在一个寄存器中,而这个将要执行指令的地址我们就需要放在PC(程序计数器)中,而这个PC也是32位的,那么此时就有一个可寻址的范围。是从-2的31次方 到 2^31 - 1吗。那么在这里有两种寻址方式,相对寻址与绝对寻址。其中beq和bne采用相对寻址,j采用绝对寻址。相对寻址...

2020-03-19 15:25:37 15039 4

原创 错误: 找不到或无法加载主类 test

在命令行中运行一个java程序(在eclipse可以运行)路径如下用命令行进行编译但当执行时报错提示找不到,然后请教别人,说是java的完整类名路径是包括包名的即是要退回到上一路径,然后重新执行,如下执行成功参考博客地址...

2020-03-05 14:50:50 2695

原创 Verilog中的七段数码管分频显示问题

先说一下七段数码管的原理:动态数码管显示的原理是: 每次选通其中一位, 送出这位要显示的内容, 然后一段时间后选通下一位送出对应数据,4 个数码管这样依次选通并送出相应的数据,结束后再重复进行。这样只要选通时间选取的合适,由于人眼的视觉暂留,数码管看起来就是连续显示的。这里面涉及到七段数码管的分频问题(决定多久从这个数码管换到下一个数码管显示)下面仅展示并说明七段数码管的分频问题(所用的...

2020-01-03 23:30:50 5589

原创 Verilog中的时钟分频

前几天做一个project,实验内容如下实验十五 摩尔状态机序列检测器(*****)1) 设计“1101”序列检测的状态转换图;2) 设计一个 8 位并转串输出模块 par2ser。该器件有 8 位输入 d[7:0],1 位输出 q,另有一个 clk 端,一个 set 端。set端上升沿将 8位输入锁存到逻辑右移移位寄存器中。3) 调用并转串输出模块,使用Verilog HDL语言的行为描述方...

2019-12-30 23:32:42 2894

原创 D触发器(Verilog)

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

2019-12-30 22:41:55 9665

原创 dev-c++中出现Failed to execute(无法执行)续

看了一下,这个问题是在9. 3出的,到现在为止快到一个月了,今天,我终于解决了。靠百度解决的,[ 1 ],我就直接用的方法一,然后如果你用命令行打开gpedit.msc时提示无法找到时(事实上我的就这样提示),然后按照这位博主的方法就可以[ 2 ]一点儿[外链图片转存失败,源站可能有防盗在这里插入!链机制,建描述]议将图片上https://传(im-logsdnimg.cn/201909271...

2019-09-28 12:30:37 7215 2

原创 C++中的顶层const和底层const

在C++中,顶层const可以表示任意的对象是常量,而底层const则是与指针,引用这样的复合符合类型相联系。确切地说,在指针中,既有底层const之说,也有顶层const的说法。但在引用中就只有底层const,原因是顶层const表示任意的对象是常量,而引用不是对象。而在其他的类型中出现的const一般都是顶层constint val = 3;const int val1 = 5; //顶层...

2019-06-23 23:55:40 509

原创 C++中判断是否为重载函数

重载函数的定义:几个函数,如果函数名相同且形参列表不同,那么就称他们是重载函数。去判断函数是否为重载函数的关键就是要理解形参列表不同。形参列表不同就是说形参列表中的形参个数不同或是形参类型不同。举一个例子int f(int val){ return val;}int f(double val){ return val;}上面的两个函数就是重载函数,而下面的两个函数就是...

2019-06-05 21:43:22 891

原创 C++中全局变量和局部变量存储时位置顺序的区别

我们知道在C++中,全局变量和局部变量的存储区域不同,全局变量存放在静态数据区,局部变量存放在栈区。但还有一个小点就是存放在静态数据区的变量是由低地址向高地址存放的,但存放在栈区的变量却是由高地址向低地址存放的,存放在静态数据区的还有静态局部变量和静态全局变量。#include <iostream> using namespace std; int allval1 = 3, al...

2019-06-04 20:44:37 1332

空空如也

空空如也

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

TA关注的人

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