欢迎光临!
AYLIEN新闻API是最强大的来源、搜索和联合分析新闻内容的方式。在这个页面中,我们将帮助您建立和运行,并提供一些代码来进行第一次调用。具体来说,您将:
- 建立一个简单的搜索来检索你的第一个新闻故事,
- 根据讨论的主题和提到的实体过滤新闻,
- 搜索来自全球各地的故事,访问从多种人类语言翻译的内容,
- 使用定量分析端点来查看聚合趋势。
在我们开始之前:
不是SDK粉丝?可以使用原始HTTP请求—调用每个端点的url和参数列在每个人的文档页面.
喜欢iPython笔记本?看看这个带有一些很酷的数据可视化的演练吧在这里.
想要跳到更高级的内容吗?检查交互式文档,其中列出了每个端点的每个参数。
另外,要了解更多关于News API的详细介绍,请查看这个介绍博客系列.有了这些,让我们开始吧!
安装SDK
皮普安装aylien-新闻-api
我们假设你已经安装了SDK,但如果你没有,你可以使用各种包管理器或从GitHub克隆repo来安装它们。您可以找到安装所选SDK的完整说明在这里.
JSON故事对象
从News API检索的新闻默认以JSON对象的形式返回。这些JSON故事对象包含22个顶级域,而完整的故事对象将包含95个独特的数据点.
注意,您可以在调用Stories端点时使用这些数据点中的大多数作为查询参数,因此当您看到包含对您很重要的信息的字段时,可以将这些数据点用作搜索中的过滤器。
我们可以将JSON对象中的数据分成三种类型:
- 故事数据(如故事主体、标题)、
- 故事元数据(如字数、出版日期和时间),
- NLP丰富—由我们的NLP引擎生成的关于故事的见解(讨论的主题、提到的实体、故事涉及的真实事件,等等)。
要了解JSON对象中返回的数据的更多细节,请参阅这篇介绍性文章博客.
基本的故事搜索:关键词,日期,排序
进口aylien_news_api从aylien_news_api.rest进口ApiException从pprint进口pprint作为页##配置到API的连接配置=aylien_news_api.配置()配置.api_key[“X-AYLIEN-NewsAPI-Application-ID”]=“YOUR_APP_ID”配置.api_key[“X-AYLIEN-NewsAPI-Application-Key”]=“YOUR_API_KEY”配置.宿主=“https://api.www.daredevilro.net/news”api_instance=aylien_news_api.DefaultApi(aylien_news_api.ApiClient(配置))##将参数作为搜索操作符列出选择={“标题”:“美国银行”或“德意志银行”,“身体”:“欺诈”,“语言”:[“en”],“published_at_start”:“NOW-7DAYS”,“published_at_end”:“现在”,“per_page”:1,“sort_by”:“相关性”}试一试:对满足搜索操作符条件的故事调用Stories端点api_response=api_instance.list_stories(**选择)##打印回来的故事页(api_response.故事)除了ApiException作为e:打印('调用DefaultApi->list_stories: %s时异常\ n'%e)
右边的代码片段将让您开始对News API的第一个调用故事
端点(记得在运行它之前粘贴凭证)。它返回了过去7天的一篇报道,标题中提到“美国银行”或“德意志银行”,正文中提到“欺诈”。
记住一定要包括a语言
参数指定要在其中检索内容的语言—这将确保获得最准确的结果。
的published_at
参数接受格式中的日期数学语法(如代码片段中所示)和日期2020 - 01 - 23 t00:00:00z
.
的per_page
此处参数的值为1,这意味着我们将检索一个故事,但可以将其设置为100。如果你想搜集超过100个故事,你可以使用光标.该参数默认为10。
的sort_by
参数允许您排序结果根据六个标准:
- 相关性
- 近因
- 暑热
- 照片/视频
- Alexa域名排名(全球/全国)
目标故事搜索:类别和实体
进口aylien_news_api从aylien_news_api.rest进口ApiException配置=aylien_news_api.配置()配置.api_key[“X-AYLIEN-NewsAPI-Application-ID”]=“YOUR_API_KEY”配置.api_key[“X-AYLIEN-NewsAPI-Application-Key”]=“YOUR_API_KEY”配置.宿主=“https://api.www.daredevilro.net/news”api_instance=aylien_news_api.DefaultApi(aylien_news_api.ApiClient(配置))选择={“entities_title_links_dbpedia”:[“http://dbpedia.org/resource/Citizens_Financial_Group”],#“entities_title_type”:(“银行”),“categories_taxonomy”:“iptc-subjectcode”,“categories_id”:[“04006002”],“语言”:[“en”],“per_page”:20.,“sort_by”:“近因”}试一试:对满足搜索操作符条件的故事调用Stories端点api_response=api_instance.list_stories(**选择)为故事在api_response.故事:打印每个故事的标题、来源和日期打印("{} || {} || {}".格式(故事.published_at,故事.源.的名字,故事.标题))除了ApiException作为e:打印('调用DefaultApi->list_stories: %s时异常\ n'%e)
为了更多地利用News API的功能,我们将使用一个示例脚本,该脚本将一些NLP丰富内容作为搜索中的参数,即类别和实体参数。
与在标题中搜索关键词不同,右边的脚本使用实体
要搜索的参数国民银行.这是有用的,因为关键字“公民”指的是银行以外的概念,通过理解它吸收的每一个新闻故事,news API将过滤掉引用这些其他概念的故事。
同时,我们现在将搜索范围限制在银行类别(代码04006002),因此在其他主题(例如,政治)中有关该银行的消息将被过滤掉。
查看有关所有银行而不是就公民银行,注释掉entities_title_links_dbpedia
参数和取消注释entities_title_type
参数。这利用了其中一个NLP浓缩实体
故事。
同样,一定要使用参数并查看支持指南。类别:
- 找到您感兴趣的主题的类别代码(可搜索表)
- 哪种分类法最适合您的用例?(博客)
- 使用类别(文档)
实体:
全球故事搜索:来源地点和故事语言
进口aylien_news_api从aylien_news_api.rest进口ApiException配置=aylien_news_api.配置()配置.api_key[“X-AYLIEN-NewsAPI-Application-ID”]=“YOUR_API_KEY”配置.api_key[“X-AYLIEN-NewsAPI-Application-Key”]=“YOUR_API_KEY”配置.宿主=“https://api.www.daredevilro.net/news”api_instance=aylien_news_api.DefaultApi(aylien_news_api.ApiClient(配置))选择={#“not_language”:“en”,“语言”:[“俄罗斯”],“source_locations_country”:[“俄罗斯”],“translations_en_body”:“犯罪”、“欺诈”或“洗钱”,“published_at_start”:“NOW-60DAYS”,“sort_by”:“相关性”}试一试:api_response=api_instance.list_stories(**选择)为故事在api_response.故事:打印("{} || {} || {}\ n{}\ n".格式(故事.源.的名字,故事.标题,故事.翻译.在.标题,故事.链接.永久链接))除了ApiException作为e:打印('调用DefaultApi->list_stories: %s时异常\ n'%e)
News API使我们能够检索来自世界各地的16种语言的内容。
为了将我们的搜索细化到特定国家的资源,我们使用source_locations_country
参数,该参数接受iso格式的国家代码。在右边的脚本中,我们将搜索范围限制在俄罗斯的出版商。您也可以通过source_locations_state
而且source_locations_city
.
为了搜索俄语故事,我们设置了语言
参数“ru”(注意ISO语言代码需要小写,而国家代码需要大写)。要搜索俄语新闻主体中的关键字,我们可以向身体
参数(“Путин”表示“普京”),或搜索translations_en_body
参数。
看到内容跨越多种非英语语言而且世界各国,取消not_language
参数并注释掉语言
参数。source_locations_country
.
时间序列数据
进口aylien_news_api从aylien_news_api.rest进口ApiException从pprint进口pprint作为页配置=aylien_news_api.配置()配置.api_key[“X-AYLIEN-NewsAPI-Application-ID”]=“YOUR_API_KEY”配置.api_key[“X-AYLIEN-NewsAPI-Application-Key”]=“YOUR_API_KEY”配置.宿主=“https://api.www.daredevilro.net/news”api_instance=aylien_news_api.DefaultApi(aylien_news_api.ApiClient(配置))选择={“标题”:“王牌”,“published_at_start”:“NOW-50DAYS”,“时间”:“+ 1天”}试一试:api_response=api_instance.list_time_series(**选择)页(api_response)除了ApiException作为e:打印('调用DefaultApi->list_stories: %s时异常\ n'%e)
除了检索故事本身之外时间序列
端点提供与参数匹配的随时间发布的新闻数量。对这个端点的调用不返回故事,因此不计入故事津贴。相反,它们返回JSON时间序列对象,像这样:
您可以使用右边的脚本进行第一次呼叫时间序列
端点。
的published_at
参数指定要检索数据的时间范围,而期
参数指定在结果中返回的每个数据点所覆盖的时间长度。的期
参数可以设置为低至一分钟,但默认为一天。端点每页最多可以返回100个数据点。
在这个脚本中,我们将接收过去7天的数据,每天有一个数据点。要查看更多粒度数据,请尝试设置期
参数“+ 30分钟”
,published_at_start
参数“NOW-1DAY”
.同样地,你可以增加期
而且published_at_start
参数来查看较长时间内的数据。
分析趋势
进口aylien_news_api从aylien_news_api.rest进口ApiException从pprint进口pprint作为页aylien_news_api.配置.api_key[“X-AYLIEN-NewsAPI-Application-ID”]=“YOUR_APP_ID”aylien_news_api.配置.api_key[“X-AYLIEN-NewsAPI-Application-Key”]=“YOUR_APP_KEY”api_instance=aylien_news_api.DefaultApi()添加您想要检索数据的“字段”场=“entities.body.links.dbpedia”选择={“标题”:“王牌”}试一试:##使用操作符和字段参数调用Trends端点api_response=api_instance.list_trends(场,**选择)打印(api_response)除了ApiException作为e:打印('调用DefaultApi->list_stories: %s时异常\ n'%e)
的趋势
endpoint用于分析来自News API的不随时间扩散的定量数据。
右边的脚本给出了这个端点的示例用例,返回了一个示例周内标题为“Trump”的故事中提到最多的实体的列表。它再次返回自己的JSON趋势对象,如下所示。
注意,您需要指定场
参数来定义想要从API检索的数据类型。有14个值场
接受参数。
|
|
---|---|
元数据 | author.name source.name source.domain |
关键字 | 关键字 标签 |
实体 | entities.title.text entities.title.type entities.title.links.dbpedia entities.body.text entities.body.type entities.body.links.dbpedia |
类别 | categories.id |
情绪 | sentiment.title.polarity sentiment.body.polarity |