Mediastack API能夠?qū)崟r(shí)搜索數(shù)百萬篇新聞文章。它能夠訪問多個(gè)類別的當(dāng)前和歷史新聞數(shù)據(jù),這些類別包括商業(yè)、健康、娛樂、體育等。在我們深入使用mediastack制作實(shí)時(shí)新聞應(yīng)用的細(xì)節(jié)之前,讓我們先探索一下它的功能。

為什么要使用 mediastack 提供實(shí)時(shí)新聞數(shù)據(jù)?

Mediastack 于 2017 年作為內(nèi)部體育新聞聚合源開始,現(xiàn)已發(fā)展成為最受歡迎的新聞數(shù)據(jù)一站式提供商之一。

以下是mediastack成為全球2000多家主要公司信賴的新聞數(shù)據(jù)API資源的一些原因:

Mediastack 為全球?qū)崟r(shí)新聞源、數(shù)據(jù)分析平臺(tái)和趨勢(shì)分析應(yīng)用程序提供支持。

不僅如此,數(shù)以萬計(jì)的個(gè)人、大學(xué)和非營(yíng)利組織都依賴 API 來獲取可靠的實(shí)時(shí)新聞數(shù)據(jù)來源。

無論您是經(jīng)營(yíng)非營(yíng)利組織、小型企業(yè)資源網(wǎng)站、社區(qū)新聞聚合網(wǎng)站,還是只想在博客上運(yùn)行 RSS 訂閱源,mediastack API 都能為您提供所有大公司每天使用的相同新聞數(shù)據(jù)源。

mediastack 提供的 API 功能

mediastack 提供以下有用的 API 功能:

實(shí)時(shí)新聞

通過 mediastack,您可以通過向 mediastack API 的新聞端點(diǎn)發(fā)出簡(jiǎn)單的 API 請(qǐng)求來訪問全套可用的實(shí)時(shí)新聞文章。

以下是實(shí)時(shí)新聞數(shù)據(jù)的 API 請(qǐng)求示例:

https://api.mediastack.com/v1/news?access_key = YOUR_ACCESS_KEY & 關(guān)鍵詞 = 網(wǎng)球 & 國(guó)家 = 美國(guó)、英國(guó)、德國(guó)

下面是一個(gè)示例 API 響應(yīng):

查看 mediastack News API 文檔,了解支持的 HTTP GET 請(qǐng)求參數(shù)的完整列表。

歷史新聞數(shù)據(jù)

強(qiáng)大的 API 還支持歷史新聞數(shù)據(jù)。如果您訂閱了標(biāo)準(zhǔn)計(jì)劃或更高版本,則可以通過使用 API 的 date 參數(shù)(格式為 YYYY-MM-DD)來指定歷史日期來訪問歷史新聞數(shù)據(jù):

https://api.mediastack.com/v1/news ?access_key = YOUR_ACCESS_KEY & 日期 = 2020-07-17

下面是一個(gè)示例 API 響應(yīng):

搜索新聞來源

使用 mediastack 的“sources endpoint”以及一系列搜索和過濾參數(shù),您可以搜索 mediastack API 支持的所有新聞來源。API 返回所有可用的源元數(shù)據(jù),包括定義實(shí)時(shí)或歷史新聞源所需的 ID。

下面是一個(gè)示例 API 請(qǐng)求:

https://api.mediastack.com/v1/sources ?access_key = YOUR_ACCESS_KEY & 搜索 = abc

下面是一個(gè)示例 API 響應(yīng):

使用 Mediastack News API 和 React 創(chuàng)建實(shí)時(shí)新聞應(yīng)用程序

Mediastack API 入門

首先,在此處獲取您的 API 憑證 并設(shè)置您的訂閱計(jì)劃:

Mediastack News API 訂閱計(jì)劃

您可以通過控制面板監(jiān)控您的使用情況。

檢查API訪問密鑰和身份驗(yàn)證

接下來,要檢查一切是否正常工作,只需在您最喜歡的 Web 瀏覽器中運(yùn)行此 URL:

http://api.mediastack.com/v1/news?access_key=YOUR_ACCESS_KEY

您將在瀏覽器中收到以下 API 響應(yīng):

瀏覽器中的 API 響應(yīng)

如果您的 API 請(qǐng)求成功,mediastack API 將返回 HTTP 狀態(tài) 200 以及 JSON 結(jié)果。這個(gè)結(jié)果包含一個(gè)分頁對(duì)象和一個(gè)數(shù)據(jù)對(duì)象,數(shù)據(jù)對(duì)象中存儲(chǔ)了一條或多條新聞文章。

以下是使用 Postman 進(jìn)行測(cè)試時(shí)將獲得的輸出:

Postman 輸出

設(shè)置 React Apps 環(huán)境

如果這是您第一次使用 React.js,請(qǐng)?jiān)诿钐崾痉逻\(yùn)行以下命令以安裝 create-react-app:

1npm i create-react-app

接下來,使用 create-react-app 創(chuàng)建一個(gè)新項(xiàng)目。切換到您的首選目錄并在您的終端上運(yùn)行此命令。在這里,我將項(xiàng)目命名為 reactjs-apilayer2:

1npx create-react-app reactjs-apilayer2

上面的命令將生成你需要的腳手架,讓你的 React 應(yīng)用程序盡快運(yùn)行。

接下來,使用以下命令運(yùn)行應(yīng)用程序:

1npm start

這會(huì)自動(dòng)在你的瀏覽器上打開 http://localhost:3000,其中包含默認(rèn)的 create-react-app 主頁:

默認(rèn) create-react-app 主頁

為應(yīng)用程序的前端設(shè)置 Bootstrap,在 public\index.html 文件中

在 index.html [1] 文件中添加指向引導(dǎo)程序 CDN 的鏈接,該文件可以在 public 文件夾中找到:

1
2
3
4
5
6
7
<head>    
 <link rel=”stylesheet” href=”https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css” integrity=”sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO” crossorigin=”anonymous”>
</head>

如何修改 src\App.js 以使用 mediastack REST News API?

要使用 mediastack API,請(qǐng)將 src\App.js [2] 文件中的代碼修改為:

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
import React, {Component} from ‘react’;

import Newss from ‘./components/newss’;
class App extends Component {

render() {

return (

<Newss newss={this.state.newss} />
)
}
state = {
newss: []
};

componentDidMount() {

fetch(“http://api.mediastack.com/v1/news?

access_key=YOUR_ACCESS_KEY&languages=en”)

.then(res => res.json())

.then((res) => {
this.setState({ newss: res.data })
})
.catch(console.log)
}
}
export default App

上面的代碼有什么作用:

  1. 調(diào)用 mediastack REST API
  2. 從Mediastack API獲取動(dòng)態(tài)數(shù)據(jù)。
  3. 創(chuàng)建一個(gè)狀態(tài)(一個(gè)保存待渲染數(shù)據(jù)的對(duì)象)。
  4. 解析并以可呈現(xiàn)的方式顯示數(shù)據(jù)(將新聞標(biāo)題(news.title)、作者(news.author)和描述(news.description)等數(shù)據(jù)呈現(xiàn)到我們的Web應(yīng)用程序中)。

如何在 src\components\newss.js 文件中創(chuàng)建一個(gè)新聞組件?

您將需要另一個(gè) .js 文件或組件來將抓取的結(jié)果顯示為 Web 應(yīng)用程序。

這是 src\components\newss.js [3] 中的代碼的樣子:

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
import React from ‘react’

const Newss = ({ newss }) => {

return (

<div>

<center><h1>Latest News</h1></center>

{newss.map((news) => (

<div class=”card”>

<div class=”card-body”>

<h5 class=”card-title”>{news.title}</h5>

<h6 class=”card-subtitle mb-2 text-muted”>{news.author}</h6>

<p class=”card-text”>{news.description}</p>

</div>

</div>

))}

</div>

)

};

export default Newss

上面的代碼有什么作用:

  1. 將結(jié)果渲染為卡片
  2. “newss”方法接受我們之前創(chuàng)建的“newss”狀態(tài),然后返回一個(gè)映射后的新聞抓取版本,該版本遍歷bootstrap卡片以插入新聞的標(biāo)題、副標(biāo)題和描述。

如何運(yùn)行我們的 Live News 應(yīng)用程序?

最后,在命令提示符內(nèi)(和工作目錄)運(yùn)行此 npm start 命令:

1npm start

此命令將打開您的瀏覽器以顯示您的實(shí)時(shí)新聞應(yīng)用程序。 您也可以通過訪問 http://localhost:3000 直接訪問它。

使用 mediastack News API 和 React 創(chuàng)建的實(shí)時(shí)新聞應(yīng)用程序的輸出

簡(jiǎn)潔而強(qiáng)大,對(duì)吧?

準(zhǔn)備好構(gòu)建您自己的 Advanced News API Scraper 應(yīng)用程序了嗎?

如您所見,mediastack REST API 提供了豐富的新聞數(shù)據(jù)和 API 功能,你可以使用它們連接到任何你正在使用的平臺(tái)或編程語言。

盡管Mediastack提供了免費(fèi)的使用層級(jí),但如果你需要更高級(jí)的功能,比如HTTPS加密、歷史數(shù)據(jù)、商業(yè)用途和技術(shù)支持,我們建議你升級(jí)你的訂閱計(jì)劃。你也可以聯(lián)系我們尋求定制解決方案。我們迫不及待地想看到你使用我們的REST API構(gòu)建了什么!

今天就去免費(fèi)注冊(cè),開始將足智多謀的實(shí)時(shí)新聞數(shù)據(jù)集成到您的應(yīng)用程序中!

結(jié)論

News API 允許開發(fā)者以編程方式訪問和搜索來自數(shù)千個(gè)可靠來源的全球新聞數(shù)據(jù)。它基本上是從各種來源收集并匯總新聞數(shù)據(jù),將其轉(zhuǎn)換為機(jī)器可讀格式,并以輕量級(jí)的JSON格式提供。

我們可以使用 News API 創(chuàng)建新聞應(yīng)用程序或新聞聚合網(wǎng)站、實(shí)時(shí)新聞源、數(shù)據(jù)分析平臺(tái)、趨勢(shì)分析應(yīng)用程序、博客上的 RSS 源等。

在本指南中,我們使用 mediastack News API 和 React 創(chuàng)建了一個(gè)簡(jiǎn)單的新聞應(yīng)用程序。

我們選擇 mediastack 是因?yàn)樗且粋€(gè)可靠的新聞 API,可以從數(shù)千個(gè)國(guó)際新聞出版商和博客(7500+ 個(gè)來源)收集實(shí)時(shí)數(shù)據(jù)。此外,API 支持 50 多個(gè)國(guó)家/地區(qū)和 13 種語言。Mediastack 還具有高度可擴(kuò)展性。依托強(qiáng)大的apilayer云基礎(chǔ)設(shè)施,可以高效處理數(shù)千個(gè) API 請(qǐng)求。它以易于使用的 JSON 格式提供新聞結(jié)果。

按照我們的教程,立即使用 mediastack 創(chuàng)建您自己的實(shí)時(shí)新聞應(yīng)用程序!

常見問題 (FAQ)

是否有新聞 API?

可以使用各種 News API 提供程序,這些提供程序提供對(duì)來自全球新聞來源的數(shù)千篇新聞文章和博客的訪問。Mediastack 是 News API 的一個(gè)示例。

有免費(fèi)的新聞 API 嗎?

mediastack News API 提供完全免費(fèi)的計(jì)劃(無需信用卡)。使用免費(fèi)計(jì)劃,您每月可以獲得 500 次 API 調(diào)用并訪問所有新聞來源。如果您需要更強(qiáng)大的功能,例如更多次數(shù)的API調(diào)用(每月最多 250,000 次調(diào)用)、歷史數(shù)據(jù)、HTTPS 加密、商用和技術(shù)支持,您可以訂閱付費(fèi)訂閱計(jì)劃。

BBC 有 API 嗎?

BBC 提供信息聯(lián)合 API。該 API 使授權(quán)用戶能夠訪問 BBC 的特定內(nèi)容,以便在他們的網(wǎng)站上進(jìn)行聯(lián)合。

如何使用 News API?

要使用 News API(例如 mediastack),您首先需要注冊(cè)、創(chuàng)建帳戶并獲取 API 密鑰。然后,您可以將 API 集成到您的應(yīng)用程序或網(wǎng)站中,并開始發(fā)出 API 請(qǐng)求。您還可以按照我們?cè)诒疚闹刑峁┑牟襟E創(chuàng)建實(shí)時(shí)新聞應(yīng)用程序。

如何找到更多同類API?

冪簡(jiǎn)集成是國(guó)內(nèi)領(lǐng)先的API集成管理平臺(tái),專注于為開發(fā)者提供全面、高效、易用的API集成解決方案。冪簡(jiǎn)API平臺(tái)可以通過以下兩種方式找到所需API:通過關(guān)鍵詞搜索API、或者從API Hub分類頁進(jìn)入尋找。

[1] https://github.com/MuhammadAzizulHakim/apilayerBlog-repo/blob/main/Article15%20-%20mediastack%20%2B%20React.js/reactjs-apilayer2/public/index.html

[2] https://github.com/MuhammadAzizulHakim/apilayerBlog-repo/blob/main/Article15%20-%20mediastack%20%2B%20React.js/reactjs-apilayer2/src/App.js

[3] https://github.com/MuhammadAzizulHakim/apilayerBlog-repo/blob/main/Article15%20-%20mediastack%20%2B%20React.js/reactjs-apilayer2/src/components/newss.js

原文鏈接:https://blog.apilayer.com/how-to-make-live-news-apps-with-mediastack-api-and-react-js/

上一篇:

來自 openFDA、DailyMed、RxNorm、GoodRx、DrugBank、First Databank 等的藥物和藥物數(shù)據(jù) API

下一篇:

如何通過Smart Image Cropping API自動(dòng)裁剪圖像?
#你可能也喜歡這些API文章!

我們有何不同?

API服務(wù)商零注冊(cè)

多API并行試用

數(shù)據(jù)驅(qū)動(dòng)選型,提升決策效率

查看全部API→
??

熱門場(chǎng)景實(shí)測(cè),選對(duì)API

#AI文本生成大模型API

對(duì)比大模型API的內(nèi)容創(chuàng)意新穎性、情感共鳴力、商業(yè)轉(zhuǎn)化潛力

25個(gè)渠道
一鍵對(duì)比試用API 限時(shí)免費(fèi)

#AI深度推理大模型API

對(duì)比大模型API的邏輯推理準(zhǔn)確性、分析深度、可視化建議合理性

10個(gè)渠道
一鍵對(duì)比試用API 限時(shí)免費(fèi)