python 通过测试微信公众号发送信息

1.微信公众号号测试账号申请 1. 打开微信公众平台https://mp.weixin.qq.com/, 2. 找到开发文档 进入后点击左侧,接口测试号申请 进入微信公众帐号测试号申请系统 获取 appID 和appsecret 并扫码关注 该测试公众号,微信要求必须和该测试账号有互动行为才能发送消息,所以我们关注后给该公众号随便发送一条消息 3.获取Access_token 接下来我们就 通过 Python 的requests 包 获取 Access_token 导包后 我们编写如下代码:
分类: 其他 发布时间: 12-01 23:05 阅读次数: 0

vim简单命令

linux中的 vim编辑器 vim编辑器 Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性。 vim有三种基本工作模式: 命令模式 编辑模式 末行模式 vim基础操作 vim是从 vi 发展出来的一个文本编辑器 。代码补完、编译及错误跳转等方便编程的功能特别丰富 末行模式和编辑模式不能直接进行转换, 都需要先进入命令行模式,在命令行模式下通过命令进入 命令行模式 任何时候,不管用户处于何种模式,只要按一下ESC键,即可进入命令模式;我们在sh
分类: 其他 发布时间: 12-01 23:04 阅读次数: 0

状态保持

状态保持 因为 http 是一种无状态协议,浏览器请求服务器是无状态的。 无状态:指一次用户请求时,浏览器、服务器无法知道之前这个用户做过什么,每次请求都是一次新的请求。 无状态原因:浏览器与服务器是使用 socket 套接字进行通信的,服务器将请求结果返回给浏览器之后,会关闭当前的 socket 连接,而且服务器也会在处理页面完毕之后销毁页面对象。 有时需要保持下来用户浏览的状态,比如用户是否登录过,浏览过哪些商品等 实现状态保持主要有两种方式: 在客户端存储信息使用 Cookie 在服务器
分类: 其他 发布时间: 12-01 23:03 阅读次数: 0

python实现QQ第三方登录

应用接入前,首先需进行申请,获得对应的appid与appkey,以保证后续流程中可正确对网站与用户进行验证与授权。http://wiki.connect.qq.com/__trashed-2 QQ登录开发文档连接 http://wiki.connect.qq.com/准备工作_oauth2-0 腾讯QQ互联平台没有python SDK,我们使用封装好的SDK包 安装:pip install QQLoginTool 导入:from QQLoginTool.QQtool import OAuthQ
分类: 其他 发布时间: 12-01 23:02 阅读次数: 0

剑指offer之冒泡排序

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/danielzhou888/article/details/83662725 冒泡排序 欢迎关注作者博客 简书传送门   冒泡排序(Bubble Sort),它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。   这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,所以叫“冒泡
分类: 其他 发布时间: 12-01 23:02 阅读次数: 0

剑指offer之二分查找

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/danielzhou888/article/details/83793634 @(算法) 二分查找 欢迎关注作者博客 简书传送门 思想:   又叫折半查找,要求待查找的序列有序。每次取中间位置的值与待查关键字比较,如果中间位置的值比待查关键字大,则在前半部分循环这个查找的过程,如果中间位置的值比待查关键字小,则在后半部分循环这个查找的过程。直到查找到了为止,否则序列中没有待查的关键字。 代码: /
分类: 其他 发布时间: 12-01 23:01 阅读次数: 0

剑指offer之合并两个排序的列表

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/danielzhou888/article/details/83903873 合并两个排序的列表 欢迎关注作者博客 简书传送门 题目   输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的,并返回合并后的头结点。 思路   假如List1中的头节点是小于List2中的,那么新的链表的头节点必将是List1的头节点,同理对List2也一样,那么在比较完头节点之后,再将Lis
分类: 其他 发布时间: 12-01 23:01 阅读次数: 0

使用Semaphore控制线程池任务提交的速率

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/danielzhou888/article/details/84036900 使用Semaphore控制线程池任务提交的速率 欢迎关注作者博客 简书传送门 介绍   当线程池的工作队列被填满后,如果没有预定义的饱和策略来阻塞任务的执行,则可以通过信号量Semaphore来限制任务的到达率。Semaphore是一个同步工具类,用来控制同时访问某个特定资源的操作数量。它的acquire方法返回一个虚拟
分类: 其他 发布时间: 12-01 23:00 阅读次数: 0

带日志和计时等功能的线程池

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/danielzhou888/article/details/84074366 带日志和计时等功能的线程池 欢迎关注作者博客 简书传送门 前言   我们先来聊聊ThreadPoolExecutor的拓展。 扩展ThreadPoolExecutor   在执行任务的线程中将调用beforeExecute和afterExecute等方法,在这些方法中还可以添加日志、计时、监视或者统计信息收集的功能。无论
分类: 其他 发布时间: 12-01 23:00 阅读次数: 0

MySQL 5.7 源码包编译安装

1.1 软件下载地址链接:https://pan.baidu.com/s/1XMWprxseIRPQkiC_7O4W2A提取码:f7x21.2 系统基础环境[root@db01 ~]# cat /etc/redhat-release;uname -r;uname -mCentOS release 6.8 (Final)2.6.32-642.el6.x86_64x86_64[root@db01 ~]
分类: 数据库 发布时间: 12-01 23:00 阅读次数: 0

通过锁顺序来避免动态的锁顺序死锁

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/danielzhou888/article/details/84145801 通过锁顺序来避免动态的锁顺序死锁 欢迎关注作者博客 简书传送门 前言   两个线程试图通过不同的顺序获取多个相同的锁。如果请求的顺序不相同,那么会出现循环的锁依赖现象,产生死锁。但是如果保证同时请求锁L和锁M的每一个线程,都是按照从 L 到 M 的顺序,那么就不会发生死锁了。   比如:银行账户转账问题,两个用户转账的话
分类: 其他 发布时间: 12-01 23:00 阅读次数: 0

剑指offer之数组最短路径规划

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/danielzhou888/article/details/84206371 剑指offer之数组最短路径规划 欢迎关注作者博客 简书传送门 题目   寻找一条从左上角(arr[0][0])到右下角(arr[m-1][n-1])的路线,使得沿途经过的数组中的整数和最小。 思路 递归法   倒着来分析:最后一步到达arr[m-1][n-1]只有两条路,即通往arr[m-2][n-1]到达或者通往ar
分类: 其他 发布时间: 12-01 22:59 阅读次数: 0

HashMap实现原理分析及简单实现一个HashMap

HashMap实现原理分析及简单实现一个HashMap 欢迎关注作者博客 简书传送门 转载@原文地址   HashMap的工作原理是近年来常见的Java面试题。几乎每个Java程序员都知道HashMap,都知道哪里要用HashMap,知道HashMap和Hashtable之间的区别,那么为何这道面试题如此特殊呢?是因为这道题考察的深度很深。这题经常出现在高级或中高级面试中。投资银行更喜欢问这个问题,甚至会要求你实现HashMap来考察你的编程能力。ConcurrentHashMap和其它同步集
分类: 其他 发布时间: 12-01 22:59 阅读次数: 0

剑指offer之找出数组中出现次数超过一半的数字

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/danielzhou888/article/details/84453771 找出数组中出现次数超过一半的数字 欢迎关注作者简书 csdn传送门 题目   一个数组中有一个数字的次数超过了数组的一半,求出这个字符。如:int a[] = {2,3,2,2,2,2,2,5,4,1,2,3},求出超过一半的数字是2 分析 解法一   数组中有一个数字出现的次数超过了数组长度的一半,如果把数组排序,排序
分类: 其他 发布时间: 12-01 22:58 阅读次数: 0

分布式锁的基本原理和实现

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/danielzhou888/article/details/84574096 欢迎关注作者简书 文章目录 一、什么是分布式锁? 二、分布式锁的使用场景。 三、分布式锁的实现(Redis) 转发:原文来自 传送门 一、什么是分布式锁?   要介绍分布式锁,首先要提到与分布式锁相对应的是线程锁、进程锁。   线程锁:主要用来给方法、代码块加锁。当某个方法或代码使用锁,在同一时刻仅有一个线程执行该方法或
分类: 其他 发布时间: 12-01 22:58 阅读次数: 0

多线程异步任务处理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/danielzhou888/article/details/83832266 @(多线程&&并发) 多线程异步任务处理 欢迎关注作者博客 简书传送门 文章目录 多线程异步任务处理 线程池 线程池的优缺点 常用的线程池技术 @Async注解 源码   我们常用ThreadPoolExecutor提供的线程池服务,springboot框架提供了@Async注解,那我们怎么去使用它呢?我们先来了解下什么
分类: 其他 发布时间: 12-01 22:57 阅读次数: 0

3D点云地图地面去除(1):基于随机一致性采样(RANSAC),未做RANSAC后续处理

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sru_alo/article/details/84677741 点云地图中包括了大量的地面点,不仅让整个地图显得很杂乱,而且对后续障碍物点云的分类、识别和跟踪带来麻烦,所以需要首先去除。首先我有两个思路: 在雷达的原始数据上把地面滤除,这样在后续的建图就不会有地面信息。 在建图结束后检测地面,然后将地面滤除。 接下来就讨论两个思路的实现。地面的滤除可以通过点云分割来实现,点云分割的目的提取点云中
分类: 其他 发布时间: 12-01 22:57 阅读次数: 0

关于计算机网络的一些基本概念总结

计算机网络速率的单位是bit/s,计算机网络中所说的信道带宽的单位也是bit/s。计算机网络中的信道带宽是指信道的最高速率。计算机网络的速率和带宽中的兆(M)都是10^6。 计算机网络延时=发送时延+传播时延+处理时延+排队时延。 发送时延=总的数据量/信道带宽。 传播时延=传输距离/电磁波在介质中的传播速率。 如果忽略处理时延和排队时延,则100MB的数据在带宽为100Mb/s的信道上通过100km光纤传输的时延为: (100*1024*1024*8/100*10^6)+(100*1000/
分类: 其他 发布时间: 12-01 22:56 阅读次数: 0

C++循环队列

队列如果使用链式存储结构则很容易实现,但是队列一般用于对大量数据进行频繁的入队和出队操作,若采用链式存储结构,则要频繁对内存进行分配和去配操作,开销很大,效率很低,因此如果要频繁的入队或出队操作时,链式结构是不合适的,而采用顺序存储结构的循环队列则很好的解决了这个问题。 MyQueue.h #pragma once class MyQueue { public: MyQueue(int items);//参数items为打算存放的数据量 virtual ~MyQueue(); bool
分类: 其他 发布时间: 12-01 22:56 阅读次数: 0

关于MFC中AfxGetApp函数是怎么得到全局对象的指针的简要分析

#include <iostream> #include <assert.h> using namespace std; //声明类名 class App; App* pThis = nullptr; class App { public: App() { pThis = this; cout << "App类的构造函数被调用" << endl; } virtual ~App(){} virtual void InitInstance() { cout << "
分类: 其他 发布时间: 12-01 22:56 阅读次数: 0