【技术博客】Arxiv的新Paper获取和机翻

目标

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

咱们要作的主要有两个步骤:python

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

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

实现

获取最新文章

arixv提供了获取文章的接口api,咱们直接根据感兴趣的领域调用便可,不一样领域的代码能够在这里得到(如cs.AI, cs.OS)。api

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

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)

以后咱们便能得到某篇文章的一些基本信息了:翻译

如文章标题:code

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

文章摘要:htm

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

调用有道Api机翻

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

有道翻译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/

http://www.javashuo.com/article/p-rzzlyrzo-nm.html

相关文章
相关标签/搜索