java 模拟web登陆httpClient并保存cookie

场景:调用接口完成某项操作,但是接口是强登录的,需要cookie, 且cookie会过期;服务器会限制登录的次数,如果一个账号频繁登录,则在短时间内无法正常登录,因此无法做到每调用接口一次就登录一次,且这样的效率也会比较低; 方法: 采用httpClient获取cookie, 并在接口上加入cookie校验; 核心代码: 0. 需要加入的jar包 1 import org.apache.commons.lang.StringUtils; 2 import org.apache.commo
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

直播推广失败后2018手游折扣app哪个最好

手游由于它特有的方便性,成为了越来越多的人的第一选择,现在手机游戏的种类也是越来越多了,在各大游戏厂商百家争鸣的今天,如何推广自己的手游,变成了一个难题。最常见的就是打广告,在大数据时代的今天,通过精确的计算,将自己的游戏推送给那些最感兴趣的人,同时也排除了那些不可能成为用户的人,省时省力,不失为好的选择,但方法不止于此,太多的厂商被禁锢住了,在直播兴起的今天,让主播试玩自己的游戏,就是一种最好的宣传,这样通过主播,可以将他的粉丝潜移默化的转化为用户,一些上手难度较高的游戏,最适合这样宣传,让
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

Go语言基础之指针

区别于C/C++中的指针,Go语言中的指针不能进行偏移和运算,是安全指针。 要搞明白Go语言中的指针需要先知道3个概念:指针地址、指针类型和指针取值。 Go语言中的指针 Go语言中的函数传参都是值拷贝,当我们想要修改某个变量的时候,我们可以创建一个指向该变量地址的指针变量。传递数据使用指针,而无须拷贝数据。类型指针不能进行偏移和运算。Go语言中的指针操作非常简单,只需要记住两个符号:&(取地址)和*(根据地址取值)。 指针地址和指针类型 每个变量在运行时都拥有一个地址,这个地址代表变量在内存中
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

jQuery实现下拉框默认选中

<form class="form-inline" method="post" action="/score_result/"> <input type="hidden" name="csrfmiddlewaretoken" value="UIbksfQRejaZFuAByesMRE9rtyGZgfJmUWRyONLqF121IqjkunGxnihnMAbvrOE3"> <div class="form-group"> <label
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

JavaScript--语法基础

JavaScript基础 JavaScript基础分为三个部分: ECMAScript:JavaScript的语法标准。包括变量、表达式、运算符、函数、if语句、for语句等。 DOM:操作网页上的元素的API。比如让盒子移动、变色、轮播图等。 BOM:操作浏览器部分功能的API。比如让浏览器自动滚动。 PS:JS机械重复性的劳动几乎为0,基本都是创造性的劳动。而不像HTML、CSS中margin、padding都是机械重复劳动。 JavaScript的特点 (1)简单易用:可以使用任何文本编
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

算法1:动态规划

动态规划是很重要的算法。 动态规划的基本思想是:将求解的问题分解成若干个子问题,先求解子问题,然后再从这些子问题的解得到原问题的解。与分治法的区别是,适合用动态规划解决的问题,经分解得到的子问题往往不是相互独立的。动态规划将问题分解成子问题,但是子问题不相互独立,而是彼此依赖,相互提供帮助,很好的利用了子问题的结构信息。 动态规划的步骤是: 1.找出最优解的特征,并刻画其结构特征; 2.递归地定义最优值; 3.以自底向上的方式计算出最优值; 4.根据计算最优值的时得到的信息,构造最优解。 动态
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

函数进阶2

目录 1. 三元表达式 2. 列表推导式 3. 字典生成式 3.1 字典生成式 3.2 zip()方法 4. 生成器 4.1 什么是生成器 4.2 怎样创建生成器 4.3生成器的表达式 4.4 为什么使用生成器 5. 匿名函数 5.1 有名函数 5.2 匿名函数 5.3 为什么要用匿名函数? 1. 三元表达式 """ 条件成立时的返回值 if 条件 else 条件不成立时的返回值 """ x = 10 y = 20 print(x if x>y else y) # 20 2. 列表推导式
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

Python学习笔记 - 基础知识总结02

01. dict {} 表示这是一个dict,是一个key:value的集合,可以通过对key的查找来找到相应的value,也可以通过Len()函数计算Dict集合的大小; d = { //key:value 'Adam': 95, 'Lisa': 85, 'Bart': 59 } 可以使用 d[key] 的形式来查找对应的 value,与list不同之处是,list 必须使用索引返回对应的元素,而dict使用key: 注意: 通过 ke
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

Test CMake run finished with errors

Test CMake run finished with errors 记录一个安装 CLion 过程中的错误。 CLion的安装和破解教程网上有很多,大家可以自行搜索。 安装了之后在 Setting-->Toolchains-->MinGW 的安装中,出现了如下问题 这个问题我百度了很久,最后才发现是文件路径的问题,CMake 路径不能包含非法字符(然而其他的就可以,这就有点强人所难了)。 修改 MinGW 路径的文件夹名字就行,修改后就正常了 照惯例先输出 希望这篇博客能解决你的问题。 吾
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

Spring boot集成Websocket,前端监听心跳实现

第一:引入jar 由于项目是springboot的项目所以我这边简单的应用了springboot自带的socket jar <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency> 第二:Socket代码编写 import org.sprin
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

Go语言基础之函数

函数是组织好的、可重复使用的、用于执行指定任务的代码块。本文介绍了Go语言中函数的相关内容。 函数 Go语言中支持函数、匿名函数和闭包,并且函数在Go语言中属于“一等公民”。 函数定义 Go语言中定义函数使用func关键字,具体格式如下: func 函数名(参数)(返回值){ 函数体 } 其中: 函数名:由字母、数字、下划线组成。但函数名的第一个字母不能是数字。在同一个包内,函数名也称不能重名(包的概念详见后文)。 参数:参数由参数变量和参数变量的类型组成,多个参数之间使用,分隔。 返回值:返
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

Python学习笔记 - 基础知识总结01

1. Python 适合什么 a. Web网站和各种网络服务 b. 系统工具和脚本 c. 作为胶水语言把其他语言开发的模块包装起来以方便使用 Python 不适合什么 a. 不适合贴近硬件的代码 b. 不适合移动开发 c. 游戏开发 Python缺点:源码无法加密 2. Python 数据类型 a. Python 数据类型包括整形,浮点型,字符串(可以用''或""括起来),布尔值,空值None Ps.对于字符串,一般可以用单引号''括起来,但如果字符串中含有(‘)等特殊组合字符时,可以使用双引
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

ES6 变量与解构(二)

一、变量的声明与使用 【测试示例需要在node环境中测试,浏览器环境下并不完全兼容ES6代码】 ES6中可以使用 {} 来包含任意一段代码,被 {} 包裹的内容称为一个代码块(局部作用域) let关键字 【声明变量】 特性: 1.块级作用域 【局部作用于声明的代码块中】 2.变量声明不会提升 【变量未声明前无法使用该变量】 3.暂时性死区 【该变量声明前面的区域】 4.不能重复声明 【同一代码块中不能重复声明同一变量】 const关键字 【声明常量(一般用大写字母表示常量)】 特性:【在遵从l
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

修改jupyter的默认路径

  1. 打开cmd,然后,输入命令“jupyter notebook --generate-config”,进入到Jupyter的安装目录,我的是在D:\Python\Anaconda\Scrips中。   2. 打开Jupyter_notebook_config.py文件   3. 找到214行,#c.NotebookApp.notebook_dir =' ',删掉开头的“#”,在‘ ’中输入你要启动的目录路径。   这样再次进入,就跳到修改的目录下啦!   参考链接:https://bl
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

Python学习笔记 - 基础知识总结03

1. 常见函数: abs():求绝对值; cmp(valA,valB):比较两个值; int(val):把其他数据类型转换为整数; str(val):把其他数据类型转换为str; sum([1,2,3]):接受一个List并返回该List之和; range(1, 101):创建一个1到100的数列; zip()函数可以把两个 list 变成一个 list: isinstance(x, str) 可以判断变量 x 是否是字符串; upper(); len(args) 2. 函数定义: def 函
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

「2019纪中集训Day12」解题报告

T1、迷宫 一个 $ n \times m (n \leq 5, m \leq 10 ^ 5) $ 的矩阵,\(0\) 表示格子不能走,\(1\) 表示格子可以走,只能向上、下、右三个方向走。有 $ q (q \leq 5 \times 10 ^ 4) $ 次操作,操作有两种: 1、修改某个格子的类型; 2、查询能否从 $ (a, b) $ 到达 \((c, d)\) (保证后者在前者右边)。 \(Sol\): 观察到 \(n \leq 5\),这是很重要的提示。 在左右方向上建线段树,线段树
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

2星|《人人都要有会计思维》:标题党,实际是日本人写的财务管理随笔

“ 说个题外话,日本的上市企业有70%以上是在3月底决算。然而出乎意料的是,零售业有很多公司是在2月或8月决算,优衣库也是在8月决算。这是因为对零售业而言,一年中营业额最少的月份就是2月与8月,在这个时候盘点,库存量是最少的,盘点很快就可以结束。” 人人都要有会计思维:给非专业会计人员的会计思维书 作者: [日]安本隆晴 出版社: 北京联合出版有限公司 副标题: 给非专业会计人员的会计思维书 译者: 张婷婷 出版年: 2019-6 页数: 216 定价: 48.00元 装帧: 精装 ISBN:
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

刷普及-刷爆了。。。。。。

今天在刷洛谷的题的时候在一题拼数那里炸掉了。。。。。。 https://www.luogu.org/problem/P1012 就是这题,我真的是很不擅长用字符串啊。连一个常识都不知道 string a,b; cin>>a>>b; if(a+b>b+a) swap(a,b); 这一段就是说把a放在b前面比b放在a前面更大,就交换这两个值。 https://www.cnblogs.com/X-Do-Better/p/8628492.html 这里递上dalao的string用法总结,侵删。
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

8.13 匿名函数

8.13 匿名函数 有名函数 基于函数名使用的函数。 def func(): pass func() 匿名函数 匿名函数,他没有绑定名字,使用一次即被收回,加括号既可以运行。 print(lambda x,y: x+y) # <function <lambda> at 0x0000028D950DC158> res = lambda x,y:x+y print(res(1,2)) # 3 与内置函数联用 匿名函数通常与max()、sorted()、filter()、sorted()方
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0

Go语言基础之数组

本文主要介绍Go语言中数组(array)及它的基本使用。 Array(数组) 数组是同一种数据类型元素的集合。 在Go语言中,数组从声明时就确定,使用时可以修改数组成员,但是数组大小不可变化。 基本语法: // 定义一个长度为3元素类型为int的数组a var a [3]int 数组定义: var 数组变量名 [元素数量]T 比如:var a [5]int, 数组的长度必须是常量,并且长度是数组类型的一部分。一旦定义,长度不能变。 [5]int和[10]int是不同的类型。 var a
分类: 其他 发布时间: 08-13 22:12 阅读次数: 0