用知网简单查找论文信息

功能

  • 通过用户输入的关键词查找相关论文信息
  • 利用CNKI知网的多个学位论文数据库,查找论文
  • 返回与关键词相似的论文信息包括:
    • 相似的论文题目
    • 作者信息
    • 论文性质
    • 论文来源
    • 论文发表时间
    • 论文下载次数
    • 论文相似句子

使用

  • 编译
    1
    javac GETcnki.java
  • 执行
    1
    java GETcnki 内幕交易 实证分析 "Rezaul Kabir" 阿姆斯特丹
  • 效果
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    正在通过CNKI查找内容相似的论文。。。
    关键词:内幕交易 实证分析 Rezaul Kabir 阿姆斯特丹

    0:股票市场失灵与政府行为选择 宋玉臣 博士
    吉林大学 2006-10-01 下载频次:1311
    句子1:其次,实证分析方面,对宏观内幕交易和微观内幕交易分别进行了实证研究。
    句子2:Rezaul Kabir和Theo Vermaelen(1996)对荷兰阿姆斯特丹股票市场进行的实证分析,通过检验年报公布前两个月的股票流动性来检验内幕交易对股票价格的影响,结论是认为该市场存在内幕交易并支持政府限制内幕交易;

    1:我国股票市场内幕交易的实证研究 刘晓明 硕士
    暨南大学 2008-05-01 下载频次:597
    句子1:暨南大学硕士论文我国股票市场内幕交易的实证研究5内幕交易案例分析及原因分析按内幕交易的主体,可以将内幕人分为证券内幕信息的知情人员(第一内幕人),从内幕信息知情人员获得内幕信息的第二内幕人和非法获取内幕信息的人。
    句子2:李心丹(2007)通过建立内幕交易行为动机结构模型,实证分析了影响内幕交易行为发生的多种因素,指出高额的期望收益和跟风攀比心态的存在极大的强化了内幕交易主体从事内幕交易的倾向,而实施内幕交易引发的内疚感、导致社会声誉的受损、被查处的力度和被惩罚的力度,特别是查处力度与惩罚力度,在相当程度上弱化了内幕主体实施内幕交易的行为倾向。

    2:股票市场内幕交易及量价波动的实证研究 陈婧 硕士
    南京理工大学 2007-06-01 下载频次:535
    句子1:Rezaul Kabir和Theovermaelen(1996)对荷兰阿姆斯特丹股票市场进行的实证分析,通过检验禁止内幕交易后股票流动性来检验其对股票市场的影响,发现限制内幕交易减少了股票的流动性(用交易量衡量流动性),同时还发现市南京理工大学硕士学位论文股票市场内幕交易及量价波动的实证研究场对利好消息的反应速度减慢。
    句子2:8.3进一步研究方向尽管本文对内幕交易进行了比较全面、细致的实证分析,但是有关内幕交易的研究仍然有待深入。

    3:我国证券市场内幕交易对投资者利益影响的实证分析 张宇 硕士
    西南大学 2011-04-05 下载频次:240
    句子1:西南大学硕士学位论文第5章内幕交易实证分析第5章内幕交易实证分析上一章已经大致介绍了运用事件研究法的步骤,本章就以西南证券(印0369)为例,进行实验研究分析。
    句子2:Theovermaelen(1996)对荷兰阿姆斯特丹股票市场进行了股票流动性与内幕交易的关系进行了实证分析,通过检验禁_l卜内幕交易后股票流动性来检验其对股票市场的影响发现,当内幕交易被限制了股票的流动性减少了,此时市场对利好消息的反应速度也减慢。

java 代码

  • 说明:主要是要保存第一次的GET请求COOKIES,用于设置于第二个GET请求
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    import java.io.BufferedReader;
    import java.io.DataOutputStream;
    import java.io.File;
    import java.io.FileReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.UnsupportedEncodingException;

    import java.lang.Integer;

    import java.net.HttpURLConnection;
    import java.net.URL;
    import java.net.URLEncoder;

    import java.util.ArrayList;
    import java.util.List;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;

    public class GETcnki {
    public static void readContentFromGet(String GET_URL) {
    String lines;
    URL cnkiURL = null;

    try {
    cnkiURL = new URL(GET_URL);
    } catch (java.net.MalformedURLException e) {
    e.printStackTrace();
    readContentFromGet(GET_URL);
    }

    List<String> cookies = null;
    StringBuffer response = new StringBuffer();

    // 打开连接,URL.openConnection函数会根据URL的类型,
    // 返回不同的URLConnection子类的对象,URL是http,返回HttpURLConnection
    try {
    HttpURLConnection connection = (HttpURLConnection) cnkiURL.openConnection();

    connection.setRequestProperty("User-Agent",
    "Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:29.0) Gecko/20100101 Firefox/29.0");
    connection.connect();
    /*
    String headerName = null;
    for (int i = 1; (headerName = connection.getHeaderFieldKey(i)) != null;
    i++) {
    System.out.println(headerName + ":" + connection.getHeaderField(i));
    }
    */
    cookies = connection.getHeaderFields().get("Set-Cookie");

    BufferedReader reader = new BufferedReader(new InputStreamReader(
    connection.getInputStream(), "utf-8"));

    while ((lines = reader.readLine()) != null) {
    response.append(lines);
    }

    reader.close();
    connection.disconnect();

    //System.out.println("----------\n"+response);
    } catch (java.io.IOException e) {
    e.printStackTrace();
    readContentFromGet(GET_URL);
    }

    //---------------------------
    URL cnkiURL2 = null;

    try {
    cnkiURL2 = new URL(
    "http://epub.cnki.net/KNS/brief/brief.aspx?pagename=" +
    response.toString());
    } catch (java.net.MalformedURLException e) {
    e.printStackTrace();
    readContentFromGet(GET_URL);
    }

    StringBuffer response2 = new StringBuffer();

    try {
    HttpURLConnection con = (HttpURLConnection) cnkiURL2.openConnection();

    con.setRequestProperty("User-Agent",
    "Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:29.0) Gecko/20100101 Firefox/29.0");
    con.setRequestProperty("Referer",
    "http://epub.cnki.net/KNS/brief/result.aspx?dbprefix=CDMD");

    String newcookies = "";

    for (String cookie : cookies) {
    newcookies += (cookie.substring(0, cookie.indexOf(";")) + ";");
    }

    //System.out.println("newcookies:" + newcookies);
    //ASP.NET_SessionId=oaxxoh3bazgbhcuei5aharzk; LID=; SID_kns=120113
    con.addRequestProperty("Cookie", newcookies);
    /*
    for (String header : con.getRequestProperties().keySet()) {
    if (header != null) {
    for (String value : con.getRequestProperties().get(header)) {
    System.out.println(header + ":" + value);
    }
    }
    }
    */
    con.connect();

    BufferedReader reader2 = new BufferedReader(new InputStreamReader(
    con.getInputStream(), "utf-8"));

    while ((lines = reader2.readLine()) != null) {
    response2.append(lines);
    }

    reader2.close();
    con.disconnect();

    } catch (java.io.IOException e) {
    e.printStackTrace();
    readContentFromGet(GET_URL);
    }

    String info = response2.toString();

    //句子&nbsp;1([\s\S]+?)句子来
    List<String> sentences = GETcnki.StrMatch(info,
    "句子&nbsp;1([\\s\\S]+?)句子来");

    for(int i =0;i<sentences.size();i++){
    //去除标签
    sentences.set(i,sentences.get(i).replaceAll("<[^>]*>",""));

    //分段
    Matcher mat =
    Pattern.compile("句子&nbsp;").matcher(sentences.get(i));
    while (mat.find())
    sentences.set(i,
    sentences.get(i).replaceAll("句子&nbsp;","\n句子"));

    sentences.set(i,"句子1"+sentences.get(i));

    }

    int i = 0;
    //har\('(.+?)'
    List<String> titles = GETcnki.StrMatch(info, "har\\('(.+?)'");
    //作者.+?">(.+?)<
    List<String> auhtors = GETcnki.StrMatch(info, "作者.+?\">(.+?)<");
    //文献来源.+?">(.+?)<
    List<String> literatures = GETcnki.StrMatch(info, "文献来源.+?\">(.+?)<");
    //en.{2}发表时间.+?>(.+?\b)<
    List<String> dates = GETcnki.StrMatch(info, "en.{2}发表时间.+?>(.+?\\b)<");
    //下载频次.+?>([\d]*)
    List<String> downloadfrequencys =
    GETcnki.StrMatch(info,"下载频次.+?>([\\d]*)");
    //来源库.+?>(.+?)[\s]+?<
    List<String> databases =
    GETcnki.StrMatch(info,"来源库.+?>(.+?)[\\s]+?<");

    for(i =0;i<sentences.size();i++){
    System.out.println(i + ":" + titles.get(i)
    +" "+auhtors.get(i)+" "+databases.get(i)
    +"\n"+literatures.get(i)+" "+dates.get(i)
    +" 下载频次:"+downloadfrequencys.get(i)+"\n"+sentences.get(i)+"\n");
    }
    }

    public static List<String> StrMatch(String raw, String regex) {
    List<String> result = new ArrayList<String>();

    Pattern pat = Pattern.compile(regex);
    Matcher mat = pat.matcher(raw);

    if (mat.find()) {
    //System.out.println("---\n"+mat.group(1)+"---\n");
    result.add(mat.group(1));

    while (mat.find())
    //System.out.println("---\n"+mat.group(1)+"---\n");
    //捕获组是从 1 开始从左到右的索引
    result.add(mat.group(1));
    } else {
    return result;
    }

    return result;
    }

    public static String encodeURIComponent(String component) {
    String result = null;

    try {
    result = URLEncoder.encode(component, "UTF-8")
    .replaceAll("\\%28", "(").replaceAll("\\%29", ")")
    .replaceAll("\\+", "%20").replaceAll("\\%27", "'")
    .replaceAll("\\%21", "!").replaceAll("\\%7E", "~");
    } catch (UnsupportedEncodingException e) {
    result = component;
    }

    return result;
    }

    public static void main(String[] args) {

    String[] s={"","","",""};
    System.out.print("正在通过CNKI查找内容相似的论文。。。\n关键词:");

    if(args.length != 4){
    System.err.println("请输入四个字符串!");
    return ;
    }

    for(int i =0 ;i<args.length;i++){
    if(args[i].length() == 0 ){
    System.err.println("\n请不要输入空字符串!");
    return ;
    }
    s[i] = encodeURIComponent(args[i]);
    System.out.print(args[i]+" ");
    }
    System.out.println("\n");

    String GET_URL = "http://epub.cnki.net/KNS/request/SearchHandler.ashx?" +
    "action=&NaviCode=*&ua=1.21&PageName=ASP.brief_result_aspx&DbPrefix=CDMD" +
    "&DbCatalog=中国优秀博硕士学位论文全文数据库" + "&ConfigFile=CDMD.xml" +
    "&db_opt=中国优秀博硕士学位论文全文数据库" +
    "&db_value=中国博士学位论文全文数据库,中国优秀硕士学位论文全文数据库" +
    "&sen_1_sel=%2FNEAR%2020&sen_1_value1=" + s[0] + "&sen_1_value2=" +
    s[1] + "&sen_2_sel=%2FSEN%2020&sen_2_value1=" + s[2] +
    "&sen_2_value2=" + s[3] + "&sen_2_logical=and" +
    "&his=0&issen=1&__=Mon%20Jun%2009%202014%2022%3A15%3A59%20GMT%2B0800%20(CST)";

    /*ConfigFile CDMD.xml
    DbCatalog 中国优秀博硕士学位论文全文数据库
    DbPrefix CDMD
    NaviCode *
    PageName ASP.brief_result_aspx
    __ Tue Jun 10 2014 12:08:21 GMT+0800 (CST)
    action
    db_opt 中国优秀博硕士学位论文全文数据库
    db_value 中国博士学位论文全文数据库,中国优秀硕士学位论文全文数据库
    his 0
    issen 1
    sen_1_sel /NEAR 20
    sen_1_value1 信息
    sen_1_value2 某种程度
    sen_2_logical and
    sen_2_sel /SEN 20
    sen_2_value1 证券市场
    sen_2_value2 最具敏感性
    ua 1.21
    */
    GETcnki gs = new GETcnki();

    gs.readContentFromGet(GET_URL);
    }
    }

嵊州四日访亲记-14-05-03

题记

  • 五一的时候去了亲嫲的老家,小的时候我经常去
  • 开始读书了之后就很少去了,只能依稀记得几件事

正文

  • 山开两面喜迎客
  • 水分一涧祝家和
  • 剡溪千尺野鲫鲜
  • 嵊春鬱鬱桑椹甜
  • 好酒越屾情义来
  • 来时轻装归满塞

##繁体正文

  • 山開兩面喜迎客
  • 水分一澗祝家和
  • 剡溪千尺野鯽鮮
  • 嵊春鬱鬱桑椹甜
  • 好酒越屾情義來
  • 來時輕裝歸滿塞

依稀的事1

  • 有一次去,记得亲嫲还有妳崖(父)或者是?
  • 在夜里很晚的时候,还在山里的崎岖的路上走
  • 没有一点灯火,那是真正的伸手不见五指
  • 那是我很小,我就拉着亲嫲的手,自己慢慢的走
  • 感觉很累,很累;在路上好像走过了一扇黑黑高高的铁门

依稀的事2

  • 某一次去的时候,很小的自己生病了
  • 大概是发烧或者其他,头昏昏的
  • 只知道是亲嫲抱着我,在漆黑的山上的田埂了走
  • 后来到了,一个灯火通明的地方
  • 现在,我才知道婶婶也跟去,路上有一大片墓地
  • 她吓的都不敢走;还有去的地方是在夜里依旧值班的
  • 村卫生室

依稀的事3

  • 太外婆的病床
  • 只记得这样一个场景
  • 在一间昏暗的老屋里,太外婆躺在木头大床上
  • 大概是亲嫲带我来看看太外婆,不知道她应了没有
  • 我只记得黑黑房间里有两样东西使我好奇
  • 一是太外婆吃的药,像牛黄解毒片包装一样的东西
  • 还有一样是,那种老式木头的马桶,有直的木头提手

依稀的事4

  • 太外婆过世
  • 太外婆过世的时候,我去了,只记得满山的披麻戴孝的人
  • 送葬的队伍,在夜里举着火把,在山路上吹吹打打,映红了星空
  • 白衣的队伍,地上落满冥纸,我记得我说,我要去见或者?太外婆
  • 亲嫲说,弗好的能,大舅公要冈言话的,我就算了

依稀的事5

  • 举猎枪、上山玩
  • 枪是我很喜欢的,那时还有,听说还可以用
  • 我那时还太小,跌跌撞撞的刚把枪抬过头,就举不动了
  • 还有上山去玩什么忘记了,只知道是一两个?哥哥带我上去
  • 爬树,捉小动物?茂密的树林里黑漆漆的,我感觉有点怕就走了
  • 后来长大了,打听了才知道县里把枪收了,太可惜了

依稀的事6

  • 小店买零食,玩竹竿
  • 在山上的小店里老爸伯给我买了咪咪虾条?蟹味粒 买了好多好多
  • 因为山上只有这个东西最好吃。玩竹竿,挥来挥去的,会有呼呼的声音
  • 记得那时候在放《包青天》93版,应该是后来重播的时候

依稀的事7

  • 进老县城,买肉菜,集市买玩具
  • 嵊州?某个镇?是有老城门的,记忆里是老旧的
  • 安静得和普通的古镇差不多,但不是现在变了味道的古镇
  • 去的时候很早,石板街上没有多少人,旁边的店也没开几家
  • 我们在一个街口,停下来买猪肉,老旧的两层老房子
  • old street from web

白银指数AGL9-20140330技术分析

##前言

  • 最近贵金属投资很热,黄金、白银、黄金期货、白银T+D等等
  • 去年末的时候,去过一家贵金属公司面试,多是电话销售,邀约客户
  • 后来没有回音,我想就算了,其他机会还有很多
  • 过年时候在家看工行现货白银,天天盯着,但出手很少,只在除夕建了满仓
  • 出于谨慎,在它达到前期箱体上时,全部抛出,赚了一点,但后面的一半没拿住

Read More

hello_luence 本地文本查找引擎的一个实例 lucene+nodejs

##hello_luence 本地文本查找引擎的一个实例 lucene+nodejs

###开始

  • 为什么会有它
    • 我有的时候会想查一些书、文章当中的字,看看这个字到底是怎么用的。
    • 在网上找到一些html版的书的网站,当用wget抓下来之后,花了很长时间,内容很多,文件很多。
    • 当然在linux下,有很好的文本查找、处理的工具,比如使用以下命令。
      • find ./* | xargs grep OpenJDK
      • 作用:在当前目录下,找出其中含有OpenJDK的文本。
      • 解释:find ./* 列出当前目录下所有文件。
        • |管道,将前面的标准输出导入到后面的标准输入
        • xargs ,将标准输入分块给后面的命令,将参数列表转换成小块分段传递给其他命令。
        • grep OpenJDK ,grep匹配正则表达式的文本进行搜索,输出匹配或不匹配的行或文本。
    • 虽然方法简单但每次每个历遍,东西太多时间太长。
    • 有个lucene项目,基于Java的全文索引工具包,虽不是搜索引擎,但开源搜索SolrNutch均基于它。

      Read More