zoukankan      html  css  js  c++  java
  • 【技术博客】Arxiv的新Paper获取和机翻

    目标

    在[知识路书]项目中,我们希望能够根据用户感兴趣的领域为用户推进该领域的最新文章。用户可以在浏览这些文章摘要的过程中,将感兴趣的文章加入到阅读列表中。

    我们要做的主要有两个步骤:

    1. 获取Arxiv.org上某个领域的最新论文(由于arxiv的国内访问速度很慢,我们使用一个脚本每天凌晨获得最新论文并存储在本地数据库中);

    2. 将文章的标题进行机翻;

    实现

    获取最新文章

    arixv提供了获取文章的接口api,我们直接根据感兴趣的领域调用即可,不同领域的代码可以在这里获得(如cs.AI, cs.OS)。

    获取某领域最新的文章,并对结果进行解析:

    query_str = 'cat:' + field
    query = 'search_query=%s&sortBy=lastUpdatedDate&start=%i&max_results=%i' % (query_str,0,results_per_iteration)
    with urllib.request.urlopen(base_url + query) as url:
    	response = url.read()
    parse = feedparser.parse(response)
    

    之后我们便能获得某篇文章的一些基本信息了:

    如文章标题:

    paper_title = parse.entries[0]['title']
    

    文章摘要:

    paper_summary = parse.entries[0]['summary_detail']['value']
    

    调用有道Api机翻

    这里我们调用有道的api对文章的标题进行机翻,方便用户的阅读:

    有道翻译api的url为

    http://fanyi.youdao.com/translate?&doctype=json&type=&i=
    

    为了实现英文->中文转换,type处应为EN2ZH_CN ,我们将要翻译的信息放在i处即可;

    返回信息为

    {
        "type": "EN2ZH_CN",
        "errorCode": 0,
        "elapsedTime": 1,
        "translateResult": [
            [
                {
                    "src": "Knowledge Roadmap",
                    "tgt": "知识的路线图"
                }
            ]
        ]
    } 
    

    参考

    http://www.arxiv-sanity.com/

    https://www.cnblogs.com/fanyang1/p/9414088.html

  • 相关阅读:
    C
    如何让asp.net mvc 直接运行mobile页面
    Nuget找不到服务器
    C#调用R语言输出图片
    sql列转行
    C#读取注册表
    关于这个博客,关于我
    NOIP 2016 简要题解
    CSP2019 题解
    CF 练死劲
  • 原文地址:https://www.cnblogs.com/lebway/p/12976967.html
Copyright © 2011-2022 走看看