- 博客(42)
- 资源 (3)
- 收藏
- 关注
原创 java爬虫实战(3):网易云音乐评论,歌曲,歌单,歌词下载
java爬虫实战(3):网易云音乐评论,歌曲,歌单,歌词下载*本实战仅作为学习和技术交流使用,转载请注明出处;本篇实战来源于自己的一个idea:收集歌曲的歌词以及热门的比较有情调的网友的歌曲点评作为基础数据集,希望能够结合机器学习和深度学习技术打造一款能够自己写诗的机器人。java爬虫实战3网易云音乐评论歌曲歌单歌词下载网易云音乐接口API分析截止20170601程序设
2019-04-23 21:09:15
2049
原创 java判断中文编码而后处理中文编码乱码问题
###先对返回的结果进行编码判断,可采用简单的编码函数进行:public static String getEncoding(String str) { String encode = "GB2312"; try { if (str.equals(new String(str.getBytes(encode), encode))) {
2017-07-18 21:12:59
1837
原创 java正则匹配返回所有匹配项
List getMatchers(String regex, String source){ Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(source); List list = new ArrayList<>(); while
2017-07-18 21:01:55
19840
3
原创 unicode编码转中文处理
###unicode编码转中文处理###实际只要进行16进制转换###代码参考示例: public static String UnicodeToChinese(String string) { String str = string.replace("\\u", ","); String[] s2 = str.split(",");
2017-07-18 21:00:27
1560
原创 JS渲染引擎比较HtmlUnit/Selenium/PhantomJs
JS渲染引擎比较HtmlUnit/Selenium/PhantomJs现如今的爬虫再也不是简单的爬取静态页面,解析Html文本这么简单,许多单页面应用,异步请求调用,页面初始化js渲染等技术的使用,使得传统的通过发起http请求获得的Document无法直接使用。因此,基于实际业务需求,在爬取某电商平台数据时,发现其页面特定位置为js渲染,固此,由此一文,基于实际代码测试,分析HtmlUnit/Se
2017-07-08 21:21:33
4767
原创 java爬虫实战(2):下载沪深信息科技类上市公司年度报告
java爬虫实战(2):下载沪深信息科技类上市公司年度报告*本实战仅作为学习和技术交流使用,转载请注明出处;本篇实战来源于一位朋友需要进行学术研究,涉及数据内容是2010年-2016年的沪深主板上市信息科技类公司年报,由于并没有现成的数据源,百度之后发现“巨潮咨询网(http://www.cninfo.com.cn/)”中含有所需信息,但需要自己手动下载,工程量大。因此,程序作为提高效率的工具,它的
2017-04-07 16:12:37
3265
1
原创 最大连续子序列和问题O(n)解法
#问题描述:输入数列,求其最大连续子序列和最大,输出该子数列及和值。时间复杂度O(n)#分析:O(n)的时间复杂度基本上只是对于一个数列的一次for循环遍历。这里有个事实情况下:假设做加法运算,A+B+C+...+K,如果K之前的加法运算的和>0,那么K与其相加势必会增加之后的求和值。因此,只要判断前面的求和值>0,我们就将其加起来。#参数:使用currentmax保存当前遍历的最大和值,
2017-03-20 10:48:55
1713
原创 某实习生招聘
看到题目,很显然是0,1背包问题,苦于平时练手不多,在正在开始写的时候犯难了,调试不通过,导致在规定的时间没提交,后悔不已。之后自己解决了代码问题,做个记录。题目:给定数组{1,3,4,5,9,11,2},输出和为n的组合个数分析:常规题目一般我给定连续的数组,如{1,2,3,4,5...,k},输出何为n的组合个数,而题目给定的数组非连续,因此在递归代码中势必需要有个中间flag用来记录
2017-03-07 16:57:47
590
原创 从Fibonacci出发小谈递归与循环
Fibonacci数列作为经典,以该方法简要看看递归和循环的区别递归:艺术且直观,往往一个问题具备递归的规律的发觉是一件最核心也是最为考究的问题。此处Fibonacci直接可表示为 f(n) = f(n-2)+f(n-1) (n>=2)| f(1)=f(0)=1public static int f(int n){ if(n<2) return 1; else retu
2017-03-05 22:09:50
318
原创 [Hard]Median of Two Sorted Arrays
Median of Two Sorted ArraysThere are two sorted arrays nums1 and nums2 of size m and n respectively.Find the median of the two sorted arrays. The overall run time complexity should be O(log (m+n)).Exam
2017-02-15 11:39:31
345
原创 [Medium]Add Two Numbers
Add Two NumbersYou are given two non-empty linked lists representing two non-negative integers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two number
2017-02-13 21:09:25
532
原创 [Easy]Two Sum
[Easy]Two SumGiven an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not use
2017-02-13 21:02:01
419
原创 服务器停电tomcat无法加载项目
排查问题过程:1. tomcat是否正常启动,测试下tomcat的webapps目录下的examples项目,正常运行无问题;2. 查看项目运行日志,发现就在停电之后发生的故障,检查tomcat控制台的日志文件,发现mysql连接失败;3. 运行services.msc,发现Mysql服务并没有启动,于是启动Mysql服务;4. 启动Mysql服务报1069错误,于是在电脑-管理-
2016-09-20 19:40:05
753
原创 java将一个List赋值给另一个List相关问题
#声明和实例化声明:ArrayList a, 仅仅只是声明了一个list变量,其未来作用相当于C++中的引用变量,亦或者相当于一个对象块的索引,但并未为其分配具体的完整的对象所需要的内存空间,其所分配的空间仅仅只是"a"变量所需空间;实例化:实例化的过程是为对象分配完整的所需内存空间。此时,对象a才是该list的一个实例,然后将分配的内存地址返回给定义的变量“a”;#java的
2016-09-11 11:58:05
77429
10
原创 APK反编译修改包名及相应的基础文件信息
仅供技术交流学习 apk反编译已经得到广泛的应用,大部分反编译的目的则是查看相应apk的代码编写及学习,(不包括发现软件的漏洞),此文带来的只是修改包名重新打包,目的只有满足在同个手机安装多个相同的软件。 使用工具说明:apktool.jar:应用于apk的解压以及反编译打包 signapk.jar : 应用于apk的签名UltraEdit:应用于修改
2016-09-05 10:48:36
12129
原创 Design Pattern:单例(SingleTon)模式
单例(Singleton)模式单例模式:为了确保一个类有且仅有一个实例,并未它提供一个全局访问点设计一个单例,需要确定何时实例化该类的单例对象,最简单的方式为:创建类的实例,并作为改类的静态成员变量,如下:/***Test类,SingleTon单例类*/public class Test(){ private static SingleTon st = new Sin
2016-08-19 15:31:32
377
原创 java运行其他程序或指令
public class CMD{ public static void main(String[] args){ //开启一个新的线程,避免程序出错 new Thread(){ public void run(){ //执行操作 String cmd = "";//输
2016-07-28 20:39:13
537
原创 思源黑体(魅族)、方正兰亭(小米)、冬青黑体(锤子)比较
思源黑体:魅族方正兰亭:小米冬青简体:锤子、MAC冬青简体:思源黑体:方正兰亭:个人认为:三者都适用于移动平台,在中文字体方面冬青字体>方正>思源
2016-05-12 10:34:36
12037
原创 虚拟机环境下部署Hadoop开发环境问题集锦
1. 如何快速的在虚拟机中搭建分布式环境使用VM虚拟机的时候,先安装好一个Centos7(随便一个linux系统)系统,作为Master,安装成功之后,利用VM的虚拟机“克隆”技术(右键虚拟机,选择管理,选择克隆)直接复制另外2(台数根据需求)台linux虚拟机,分别命名Slave1,Slave22. 在自己的本子上装了这么多的虚拟机转不动太卡,尤其是在虚拟机中使用li
2016-03-08 17:22:18
1249
原创 java爬虫实战(1):抓取信息门户网站中的图片及其他文件并保存至本地
java爬虫实战(1):抓取新闻网站中的图片和文件并保存至本地本实战仅作为学习和技术交流使用,转载请注明出错;本实战中的代码逻辑编写参考《自己动手写网络爬虫》一书,本书提供的章节源码由于是第一篇实战,因此此处将较为详细的从基础讲解java爬虫原理及相关实现技术。java爬虫实战1抓取新闻网站中的图片和文件并保存至本地网页抓取基础HttpClient正则表达式HtmlParser实战抓取信息
2016-02-26 16:59:31
10017
转载 贝叶斯分类
朴素贝叶斯分类1.1、摘要 贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类。本文作为分类算法的第一篇,将首先介绍分类问题,对分类问题进行一个正式的定义。然后,介绍贝叶斯分类算法的基础——贝叶斯定理。最后,通过实例讨论贝叶斯分类中最简单的一种:朴素贝叶斯分类。1.2、分类问题综述 对于分类问题,其实谁都不会陌生,说我们每
2016-01-15 11:49:16
674
原创 从最长公共子串到后缀自动机(LCS->SAM)
Longest Common Substring—Suffix Automaton本文将从最长公共子串开始说起,循序渐进的讲解后缀自动机,希望通过自己的理解帮助到大家,文章目录如下:最长公共子串问题后缀自动机历史后缀自动机简介后缀自动机相关理论基础如何构造后缀自动机后缀自动机的应用总结最长公共子串问题首先来看一到经典的例题题目:给出N个长度不超过100000的字符串,求他们的最长公共
2016-01-05 11:19:11
4179
原创 JSP界面中引用相对路径问题
JSP界面中引用相对路径问题目的:为了解决网页中的相对位置与工程项目的相对位置不一致问题而导致的页面跳转错误有一个work工程,其webroot下有jsp文件夹,里面包含有login.jsp和register.jsp如果在jsp页面中使用<a href="jsp/register">注册</a>此时网页中的url地址为localhost:8080/work/jsp/login.jsp当点击注册
2015-12-28 11:08:17
1214
原创 java读取图像的rpg以及灰度值,可以对rgb进行修改后输出新图像
java读取图像的rpg以及灰度值,可以对rgb进行修改后输出新图像/***java读取图像的rpg以及灰度值,可以对rgb进行修改后输出新图像*/ File file = new File(filename); BufferedImage BI = null; try{ BI = ImageIO.read(file);
2015-12-28 10:44:23
8592
原创 win10安装matlab时无法进入安装界面
解决方法:在安装的时候会先安装verdict_x64,安装完成之后需要重启机子后才能正常进入matlab安装界面
2015-12-10 21:38:06
17028
原创 利用堆栈实现找寻队列最大数
利用堆栈实现找寻队列最大数/***问题描述*有一个序列{3,4,1,7,5,9},利用堆栈求他的最大值(前提是堆栈中需要保存序列的所有数字)*///算法思路//用A,B两个栈,利用A栈保存序列,B栈保存当前进入A栈的数的最大数例如:首先,3进入A栈,此时A栈为空,则A栈最大数为3,将3压入B栈;其次,4进入A栈,此时4与B栈栈顶元素3比较,4>3,4压入B栈;接着,1进入A栈,此时
2015-11-11 21:13:04
453
转载 java中vector与arraylist的区别
这两个类都实现了List接口(List接口继承了Collection接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素,,并且其中的数据是允许重复的,这是HashSet之类的集合的最大不同处,HashSet之类的集合不可以按索引号去检索其中的元素,也不允许有重复的元素(本来题目问的与hashset没有任何关系,但为了说
2015-09-13 17:30:06
553
原创 java使用JDBC连接mysql并且进行批量增删改操作
在处理百万级的数据时,经常需要对数据库中的数据进行增删改查操作,由于数据量大,进行Query的时候在效率上还是可以接受,但进行增删改的时候,如果采用一次一条记录操作,则效率大大的降低,因此,需要进行批量操作。 本文利用java在eclipse环境下连接mysql数据库进行批量操作。操作原理很简单,主要利用Betch函数,进行批量操作。Connection conn = Dr
2015-09-11 15:00:51
6770
转载 [性能]StringBuilder与StringBuffer的区别(转)
相信大家看到过很多比较String和StringBuffer区别的文章,也明白这两者的区别,然而自从Java 5.0发布以后,我们的比较列表上将多出一个对象了,这就是StringBuilder类。String类是不可变类,任何对String的改变都会引发新的String对象的生成;而StringBuffer则是可变类,任何对它所指代的字符串的改变都不会产生新的对象,可变和不可变类这一对对象已经齐全
2015-09-06 11:31:23
403
原创 java利用栈实现括号()[]匹配问题
描述现在,有一行括号序列,请你检查这行括号是否配对。输入第一行输入一个数N(0输出每组输入数据的输出占一行,如果该字符串中所含的括号是配对的,则输出Yes,如果不配对则输出No样例输入3[(])(])([[]()])样例输出NoNoYes解法一:常规思路,对单个字符进行比较处理,不提供源代码解法二:
2015-09-05 18:13:57
3463
原创 js中的substring和substr的小区别
首先js中的substring和substr的方法都是对字符串的截取。substring(start,end)返回一个新的字符串,该字符串值包含 stringObject 的一个子字符串,其内容是从 start 处到 stop-1 处的所有字符,其长度为 stop 减 start。substr(start,length)substr 方法用于返回一个
2015-08-24 11:55:08
1224
原创 web项目中的各种路径的获取
1、JSP中获得当前应用的相对路径和绝对路径 根目录所对应的绝对路径:request.getRequestURI() 文件的绝对路径 :application.getRealPath(request.getRequestURI()); 当前web应用的绝对路径 :application.getRealPath("/"); 取得请求文件的上层目录:new File(appl
2015-08-22 09:26:05
498
原创 使用eclipse开发web项目中常见的中文乱码问题总结
1.确保你的数据库连接中添加了编码设置,如useunicode=true&characterEncoding=utf-82.确保你的tomcat的server.xml文件中的配置项为utf-83.确保你的网页的编码方式为utf-8,如4.确保你的eclipse的Workspace的Text file encoding编码为utf-85.以上如果都不能解决,可采用以下方式:
2015-08-20 15:12:03
14589
1
原创 在tomcat下部署war项目各种问题
使用tomcat的时候经常会遇到各式各样的问题。这里列出以下几个问题及解决方法: 问题一:tomcat的startup.bat秒退解决方法:1.可在starup.bat最后面加入pause查看错误原因(项目自身问题导致) 解决方法:2.确保java的运行环境配置是正确的,加入TOMCAT_HOME的环境配置(环境配置引起) 问题二:tomcat
2015-08-11 12:34:08
1312
原创 Windows 2008 R2 标准版 ie提示 当前安全设置不允许下载该文件 解决办法
1.确定internet选项的下载文件已经启用了2.Internet选项设置 加载应用程序和不安全文件 为提示
2015-07-31 10:57:55
20303
2
原创 安卓apk文件反编译
需要用到的工具: dex2jarjdgui axmlprinter2.jar可反编译的内容: jar包 xml文件操作步骤: 1.将apk文件的后缀改成zip,并解压,得到一个classes.dex文件 2.将该文件放置下载好的dex2jar文件的目录下 3.在该处运行控制台(按住shi
2014-12-20 13:35:35
502
原创 在安卓虚拟机中安装apk
1.打开控制台,定位至android的sdk下的platfrom-tools文件夹(直接打开该目录,按住shift+鼠标右键,选择在该处运行控制台)2.在控制台中输入 adb install **(**指apk全称)3.安装成功
2014-12-20 13:33:23
718
原创 java日期格式化输出
使用方法:import java.util.Date;/** 支持格式为 yyyy.MM.dd G 'at' hh:mm:ss z 如 '2002-1-1 AD at 22:10:59 PSD' * yy/MM/dd HH:mm:ss 如 '2002/1/1 17:55:00' * yy/MM/dd HH:mm:ss pm 如 '2002/1/1 17:
2014-12-10 13:26:05
461
XMU《XML》实验任务书 XSLT
2014-01-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人