如何存储来自Google Ngram API的数据?

时间:2015-10-31 20:24:40

标签: api text nlp n-gram

我需要将图表中显示的数据存储在Google Ngram网站上。例如,我想存储"它的出现""以1800-2008为百分比,如以下链接所示:https://books.google.com/ngrams/graph?content=it%27s&year_start=1800&year_end=2008&corpus=0&smoothing=3&share=&direct_url=t1%3B%2Cit%27s%3B%2Cc0

我想要的数据是您可以在图表上滚动的数据。我怎样才能提取大约140个不同的术语(例如"它","它们'","她""等等)?

2 个答案:

答案 0 :(得分:2)

econpy编写了一个nice little module in Python,可以通过命令行界面使用。

对于你的"它"例如,您需要在终端/ Windows控制台中键入此命令:

python getngrams.py it's -startYear=1800 -endYear=2008 -corpus=eng_2009 -smoothing=3

这会自动将查询结果保存在以查询参数命名的CSV文件中。

答案 1 :(得分:0)

econpy 的包,在@HugoMailhot 的回答中,不再有效(2021 年)并且似乎没有得到维护。 这是一个更新的版本,有一些改进可以更容易地集成到 Python 代码中: https://gitlab.com/cpbl/google-ngrams

您可以从命令行(如在 econpy 中)调用它来创建一个 CSV 文件,例如

getngrams.py it's -startYear=1800 -endYear=2008 -corpus=eng_2009 -smoothing=3

或者从python调用它直接在python中获取(和绘制)数据,例如:

from getngrams import ngrams
df = ngrams('bells and whistles -startYear=1900 -endYear=2018 -smoothing=2')
df.plot()

xkcd 功能仍然存在。

(问题/错误修复拉取请求/等欢迎在那里)