爬虫入门六(异步的爬虫框架scrapy)

1、框架概述 - 异步的爬虫框架。 - 高性能的数据解析,持久化存储,全栈数据的爬取,中间件,分布式 - 框架:就是一个集成好了各种功能且具有很强通用性的一个项目模板。 2、环境的安装 Linux: pip3 install scrapy   Windows: a. pip3 install wheel b. 下载twisted http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

ElGamal加密算法

ElGamal加密算法 ElGamal加密是一种公共密钥密码系统。它使用非对称密钥加密在双方之间进行通信并加密消息。 该密码系统基于难以找到循环群中离散对数的困难,即使我们知道g a和g k,也很难计算g ak。 ElGamal密码系统的想法 假设Alice想与Bob交流。 鲍勃生成公钥和私钥: 鲍勃选择一个非常大的数q和一个循环群F q。 从环状基团˚F q,他选择的任何元素克和 一个元件一个,使得满足gcd(A,Q)= 1。 然后,他计算h = g a。 鲍勃发布F,h = g a,q和g
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

使用Python将xmind脑图转成excel用例(一)

最近接到一个领导需求,将xmind脑图直接转成可以导入的excel用例,并且转换成gui可执行的exe文件,方便他人使用。 因为对Python比较熟悉,所以就想使用Python来实现这个功能,先理一下思路,首先要将xmind转换成Python可用的数据格式,正好找到了一个xmindparser库可以做这个事情,然后就好办了,用xlwt库写成xls文件,再用Python自带的gui库 tkinter来写 gui界面,最后用pyinstaller来打包。 计划分两个py文件来写,一个文件写exce
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

Win32 API编程——前言

一丶什么是Win32 API?   简单来说,就是微软为了保护操作系统的安全稳定,不允许运行在用户层的进程随意操控系统内核,而是必须按照一定方式。就是说我们用户层要与系统内核层交互(比如对内存、进程操作),只能通过调用Windows内核层提供的接口函数,也就是Win32API来操控。这些API以DLL(动态链接库)的形式保存(一般在SYSTEM32文件夹中,你可以发现大量的DLL),我们最常用的是kernel32.dll、user32.dll和gdi32.dll。   所有基于NT内核(包括X
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

构建调试Linux内核网络代码的环境MenuOS系统

构建调试Linux内核网络代码的环境MenuOS系统 安装,编译linux内核 步骤 1:下载,配置编译为32位 #如果想编译为64位,请直接从步骤二开始。 mkdir LinuxKernel #创建一个项目目录 cd LinuxKernel wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.0.1.tar.xz #下载linux-5.0.1的内核,当然也可以下载其他版本的,就是有点慢。 xz -d linux-3.18.
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

SHELL脚本--shell数组基础

数组和变量的区别是:变量在内存中占用的空间是离散的,数组在内存中是先开辟一段连续的大内存空间,随后数组中的每个元素都放入数组内存中。数组元素使用数组index标识。 bash里有两种数组:普通数组和关联数组。普通数组只能使用整型数值作为数组索引,关联数组可以使用字符串作为索引。所谓的关联数组,它的另外三种称呼:字典(dict)、hash结构和映射(map),是一种key和value一 一对应的关系。 普通数组                              定义数组的方式一:    
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

[Codeforces 1265E]Beautiful Mirrors

Description 题库链接 一共有 \(n\) 个关卡,你初始在第一个关卡。通过第 \(i\) 个关卡的概率为 \(p_i\)。每一轮你可以挑战一个关卡。若通过第 \(i\) 个关卡,则进入第 \(i+1\) 个关卡,否则重新回到第 \(1\) 个关卡。通过第 \(n\) 个关卡则算成功。问期望多少轮游戏才能成功。 \(1\leq n\leq 2\cdot 10^5\) Solution 设从第 \(i\) 个关卡通关的期望为 \(E_i\)。显然 \[ E_i=p_i(E_{i+1}+
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

Vim 入门

Vim 是字符模式下的一种文本编辑器,不需要图形界面,它是 Vi 的一个发展。 Vim 与常见文本编辑器的区别在于,它有四种模式,“正常模式”“插入模式”“命令模式”“可视模式”。 插入模式是最正常的文本。 打开 使用 vim <filename> 来打开文件,或新建一个文件。 Vim的四种模式 Vim 打开后进入正常模式,通过一些命令可以进入插入模式。 通过输入:进入命令模式,光标会移动到窗户左下角,这种模式下,可以对文件和环境做一些操作。 通过输入 v 或 V 进入可视模式,可以选择一部分
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

安卓课程设计报告

安卓课程设计报告 (2019—2020学年 第一学期) 学生学籍管理系统设计 系 别: 信息与控制工程系 专 业: 计算机科学与技术 班 级: 1702 学 号: 173230216 姓 名: 张子健 指导教师 郭丹 完成时间 2019年12月5日 目录 一.选题的目的和意义............................................................................................3 二、系统需求分析.........
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

URLSearchParams对象

URLSearchParams对象用于处理URL中查询字符串,即?之后的部分。 1.语法 其实例对象的用法和Set数据结构类似。实例对象本身是可遍历对象。但是不是遍历器。 var paramsString = 'q=URLUtils.searchParams&topic=api'; var searchParams = new URLSearchParams(paramsString); 2. 实例操作方法 1. has(key) searchParams.has('topic'); //
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

RSTP基础配置

本实验模拟公司网络场景。S3和S4是接入层交换机,负责用户的接入,S1和S2是汇聚层交换机,四台交换机组成一个环形网络。为了防止网络中出现环路,产生网络风暴,所有交换机上都需要运生成树协议。同时为了加快网络收敛速度,网络管理员选择使用RSTP协议,且使得性能较好的S1为根交换机,S2为次根交换机,并配置边缘端口进一步优化公司网络。 实验拓扑 实验编址 实验步骤 1、基础配置 根据实验编址表进行相应的基本IP地址配置,并使用ping命令检测直连链路的连通性 2、配置RSTP基本功能 在汇聚层交换
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

getElementsByName&getElementById

id获取单个 name获取数组
分类: 其他 发布时间: 12-06 23:01 阅读次数: 0

node.js stream

(看到这里终于知道http的request为什么能定义监听器了) Node.js Stream(流) Stream 是一个抽象接口,Node 中有很多对象实现了这个接口。例如,对http 服务器发起请求的request 对象就是一个 Stream,还有stdout(标准输出)。 Node.js,Stream 有四种流类型: Readable - 可读操作。 Writable - 可写操作。 Duplex - 可读可写操作. Transform - 操作被写入数据,然后读出结果。 所有的 Str
分类: 其他 发布时间: 12-06 23:00 阅读次数: 0

南邮CTF - Writeup

南邮CTF攻防平台Writeup By:Mirror王宇阳 个人QQ欢迎交流:2821319009 技术水平有限~大佬勿喷 ^_^ Web题 签到题: 直接一梭哈…… md5 collision: 题目源码提示: $md51 = md5('QNKCDZO'); $a = @$_GET['a']; $md52 = @md5($a); if(isset($a)){ if ($a != 'QNKCDZO' && $md51 == $md52) { echo "nctf{************
分类: 其他 发布时间: 12-06 23:00 阅读次数: 0

正则表达式常用示例

import re """ 使用match方法进行匹配 result = re.match(正则表达式,要匹配的字符串) 如果match匹配到数据的话,就可以使用group方法提取数据 注: 若字符串匹配正则表达式,则match方法返回匹配对象(Match Object), 否则返回None(不是空字符串) match方法是从左到右匹配(因为match的这种特性,所以 ^ 从字符串头开始匹配 可以不用写),匹配到不一样的地方,match方法就结束!
分类: 其他 发布时间: 12-06 23:00 阅读次数: 0

会计学专业本科培养方案

一、专业简介 中南大学会计系1993年开始招收“会计学”本科生,1998年获得会计学硕士授予权,2005年在“工商管理”一级学科博士点下设“会计学”二级学科博士点;中南大学会计系师资力量雄厚,现有教师16人,其中教授4人(博士生导师4人),副教授8人;建有会计综合模拟、ERP、沙盘模拟实验室等实验实习平台;本专业立足会计学学科前沿,服务社会和国家经济发展,在教学、科研和学生培养中,已形成循环经济与会计、反倾销会计、会计管理信息系统、审计理论等多个有特色的研究方向,承担了一系列国家、省部级和校企
分类: 其他 发布时间: 12-06 23:00 阅读次数: 0

JS ES5

严格模式 use strict 必须使用var声明变量 自定义函数this指向window 'use strict' funcion Person(name){ this.name = name; } Person("Tom"); //error new Person("Tom"); //right
分类: 其他 发布时间: 12-06 23:00 阅读次数: 0

第一个java记录

import java.util.Arrays; import java.util.Random; import java.util.Scanner; /** 1. 定义一个长度为5 的int类型数组arr, 提示用户输入5个1-60之间的数字作为数组元素 生成2-10(范围包含2和10)之间的随机数num 比那里数组arr,筛选出数组中的不是num倍数的元素并且输出 */ public class Test01 { public static void main(String
分类: 其他 发布时间: 12-06 23:00 阅读次数: 0

VM虚拟机安装无法将值写入注册表.....请确认你是否有足够的权限访问该注册表项,或者与技术支持人员联系。

解决方法: 关掉360安全卫士等软件再安装
分类: 其他 发布时间: 12-06 23:00 阅读次数: 0

线程运行诊断

线程运行诊断** 定位 用top定位哪个进程对cpu的占用过高 ps H -eo pid,tid,%cpu | grep 进程id (用ps命令进一步定位是哪个线程引起的cpu占用过高) jstack 进程id 可以根据线程id 找到有问题的线程,进一步定位到问题代码的源码行号 要先将32665转为16进制,即0x7f99,定位到了具体的代码 /** * 演示 cpu 占用过高 */ public class Demo1_16 { public static void main(
分类: 其他 发布时间: 12-06 22:50 阅读次数: 0