十個(gè)實(shí)用免費(fèi) API 助您為下一個(gè)項(xiàng)目提供強(qiáng)大動(dòng)力
API 是現(xiàn)代開(kāi)發(fā)的支柱,集成強(qiáng)大的功能變得更加容易,而無(wú)需重新設(shè)計(jì)輪子。無(wú)論您是構(gòu)建 Web 應(yīng)用程序、分析文本還是獲取實(shí)時(shí)數(shù)據(jù),API 都可以通過(guò)提供現(xiàn)成的解決方案來(lái)幫助您節(jié)省時(shí)間和精力。
在本文中,我們將探索 10 個(gè)令人驚嘆的 API,它們可以為您的項(xiàng)目提供強(qiáng)大的功能。
1. IPStack
“實(shí)時(shí) IP 地理位置 API”
假設(shè)您經(jīng)營(yíng)一家為全球客戶(hù)提供服務(wù)的電子商務(wù)商店。您希望以用戶(hù)當(dāng)?shù)刎泿艂€(gè)性化價(jià)格、顯示特定地區(qū)的優(yōu)惠,并防止來(lái)自高風(fēng)險(xiǎn) IP 的欺詐交易。您如何實(shí)時(shí)收集所有這些信息?
這就是 IPStack API 的作用所在。通過(guò)簡(jiǎn)單的 API 請(qǐng)求,您可以立即檢索 IP 的位置(國(guó)家、城市、緯度、經(jīng)度)、時(shí)區(qū)、貨幣,為了安全,例如用戶(hù)是否使用 VPN 或可疑代理。無(wú)論您是構(gòu)建本地化體驗(yàn)、實(shí)施區(qū)域訪(fǎng)問(wèn)限制還是加強(qiáng)欺詐檢測(cè),IPStack 都可以簡(jiǎn)化流程。
將 IPStack 集成到您的項(xiàng)目中就像導(dǎo)入 Python 庫(kù)一樣無(wú)縫。只需獲取您的免費(fèi) API 密鑰,您就可以開(kāi)始了!
import requests
import json # Import the JSON module
API_KEY = "YOUR_API_KEY"
IP = "101.32.228.0" ## IP You Wann Exploreurl = f"https://api.ipstack.com/{IP}?access_key={API_KEY}&hostname=1"
response = requests.get(url)
# Pretty-print JSON response
print(json.dumps(response.json(), indent=2))
不僅如此,您還可以通過(guò)在 URL 末尾添加某些參數(shù)來(lái)完全自定義 JSON 輸出,例如,以不同的語(yǔ)言獲取輸出、僅獲取特定響應(yīng)字段、響應(yīng) XML 等等,您可以通過(guò)閱讀其精彩而簡(jiǎn)單的文檔來(lái)探索這些功能。
一些用例
安全和欺詐預(yù)防:通過(guò)識(shí)別通過(guò) VPN、代理或 Tor 網(wǎng)絡(luò)連接的用戶(hù)來(lái)檢測(cè)可疑活動(dòng)。
個(gè)性化用戶(hù)體驗(yàn):根據(jù)用戶(hù)的位置自動(dòng)調(diào)整網(wǎng)站內(nèi)容、語(yǔ)言或貨幣。
2. MarketStack
“您自己的智能股票市場(chǎng)研究工具”
如果您正在開(kāi)發(fā)股票跟蹤應(yīng)用程序、財(cái)務(wù)分析工具或交易機(jī)器人,則需要準(zhǔn)確且最新的市場(chǎng)數(shù)據(jù)。但手動(dòng)提取這些數(shù)據(jù)或依賴(lài)分散的來(lái)源是一場(chǎng)噩夢(mèng)。
使用 MarketStack API,您只需一次 API 調(diào)用即可從 70 多個(gè)全球交易所獲取實(shí)時(shí)、日內(nèi)和歷史股票數(shù)據(jù)。無(wú)需網(wǎng)頁(yè)抓取,沒(méi)有數(shù)據(jù)不一致 - 只需干凈、結(jié)構(gòu)化的財(cái)務(wù)數(shù)據(jù)即可使用。
最好的部分是他們結(jié)構(gòu)良好的開(kāi)發(fā)人員文檔,這使得將此 API 集成到您的項(xiàng)目中毫不費(fèi)力,確保獲得順暢無(wú)憂(yōu)的體驗(yàn)。
讓我們獲取蘋(píng)果和微軟的股票數(shù)據(jù),并對(duì)兩者進(jìn)行比較分析,看看在過(guò)去 30 天內(nèi)哪家表現(xiàn)良好,所有這些都使用這個(gè)驚人的 MarketStack API。
您可以在我的 Github Gist 中找到完整的代碼:MarketStack_Stock_Comparision.py
一些用例
- 財(cái)務(wù)分析和投資研究:使用日內(nèi)數(shù)據(jù)監(jiān)控價(jià)格變動(dòng)并識(shí)別交易機(jī)會(huì)。
- 股票跟蹤和投資組合管理應(yīng)用程序:獲取實(shí)時(shí)股票價(jià)格以立即更新用戶(hù)儀表板。
3. Scrapestack
“您的友好網(wǎng)頁(yè)抓取 API?!?/span>
假設(shè)您需要來(lái)自新聞網(wǎng)站、電子商務(wù)平臺(tái)或競(jìng)爭(zhēng)對(duì)手網(wǎng)站的實(shí)時(shí)數(shù)據(jù)。但是,由于反機(jī)器人措施、速率限制和 CAPTCHA,網(wǎng)頁(yè)抓取可能會(huì)很棘手。
Scrapestack 通過(guò)提供代理驅(qū)動(dòng)的網(wǎng)頁(yè)抓取 API 解決了這個(gè)問(wèn)題,該 API 可以輕松提取網(wǎng)頁(yè)數(shù)據(jù)而不會(huì)被阻止。
import requests
from bs4 import BeautifulSoup
params = { 'access_key': 'YOUR_API_KEY', 'url': 'https://scrapestack.com/documentation'}
api_result = requests.get('http://api.scrapestack.com/scrape', params)
website_content = api_result.content
# Parse HTML
soup = BeautifulSoup(website_content, "html.parser")
#print(soup.prettify()) ## Prettify The Scraped Content
# Extract all paragraph texts
paragraphs = [p.get_text() for p in soup.find_all('p')]
## If u plant to use Google Colab for this!!
from IPython.core.display import display, Markdown
display(Markdown("\n\n".join(paragraphs)))
他們的文檔充滿(mǎn)了許多有趣的內(nèi)容,您可以探索這些內(nèi)容,以抓取具有動(dòng)態(tài) JavaScript 呈現(xiàn)數(shù)據(jù)的最先進(jìn)的網(wǎng)站。
一些用例
SEO 和 SERP 跟蹤:監(jiān)控您的網(wǎng)站和競(jìng)爭(zhēng)對(duì)手的搜索引擎排名和關(guān)鍵字性能。
電子商務(wù)價(jià)格和產(chǎn)品監(jiān)控:跟蹤不同平臺(tái)上的競(jìng)爭(zhēng)對(duì)手價(jià)格、折扣和庫(kù)存情況。
4. Mediastack
“關(guān)注世界各地的重大事件”
開(kāi)發(fā)人員、網(wǎng)絡(luò)安全專(zhuān)家和 AI 工程師之間的共同點(diǎn)是什么?他們都喜歡了解全球最新的技術(shù)趨勢(shì)和重大網(wǎng)絡(luò)事件。
但說(shuō)實(shí)話(huà)——我們繁忙的日程安排并不總是允許我們?yōu)g覽無(wú)數(shù)的新聞文章來(lái)了解重要內(nèi)容。此 API 可以幫助您解決所有問(wèn)題。
# Python 3
import http.client, urllib.parse
import jsonconn = http.client.HTTPConnection('api.mediastack.com')
params = urllib.parse.urlencode({
'access_key': 'YOUR_API_KEY',
'categories': 'technology,science',
# Excluding general & sports
'sort': 'popularity',
'limit': 2, # Fetch latest 2 articles
'sources':'cnn,bbc' })
conn.request('GET', '/v1/news?{}'.format(params))
res = conn.getresponse()
data = res.read()
print(data.decode('utf-8'))
借助 MediaStack API,現(xiàn)實(shí)世界的可能性是無(wú)限的。從突發(fā)新聞警報(bào)到趨勢(shì)分析,您可以通過(guò)深入了解其開(kāi)發(fā)人員文檔來(lái)充分發(fā)揮其潛力。
其中一個(gè)用例是利用此 API 和 Python 的電子郵件功能自動(dòng)將每日科技和網(wǎng)絡(luò)新聞?wù)苯影l(fā)送到您的收件箱——輕松無(wú)縫。您可以在我的 GitHub Gist 上找到此代碼:MediaStack_News_Digest.py。
一些用例
- 威脅情報(bào)和安全監(jiān)控:為威脅情報(bào)團(tuán)隊(duì)自動(dòng)收集網(wǎng)絡(luò)安全新聞。
- 播客和博客內(nèi)容策劃:根據(jù)熱門(mén)新聞自動(dòng)生成技術(shù)博客的主題創(chuàng)意。
5. Weatherstack
“實(shí)時(shí)和歷史世界天氣數(shù)據(jù) API”
如果您正在開(kāi)發(fā)旅行應(yīng)用、農(nóng)業(yè)儀表板或戶(hù)外規(guī)劃工具,那么擁有準(zhǔn)確的天氣數(shù)據(jù)將改變游戲規(guī)則。但如何輕松訪(fǎng)問(wèn)實(shí)時(shí)天氣狀況、預(yù)報(bào)和歷史數(shù)據(jù)?
使用 WeatherStack API,您可以通過(guò)單個(gè)請(qǐng)求訪(fǎng)問(wèn)實(shí)時(shí)天氣數(shù)據(jù)、預(yù)報(bào)和歷史報(bào)告。只需獲取您的 API 密鑰并調(diào)用其中一個(gè)端點(diǎn) - 就是這么簡(jiǎn)單。此外,他們的開(kāi)發(fā)人員文檔非常直觀且引人入勝,就像翻閱一本寫(xiě)得很好的小說(shuō)一樣。
import requests
import jsonAPI_KEY = "YOUR_API_KEY"
url = f"https://api.weatherstack.com/current"
params = {"access_key": API_KEY, "query": "London"}
response = requests.get(url, params=params)
if response.status_code == 200:
data = response.json()
current_weather = data.get("current", {})
location = data.get("location", {})
print(f"?? Location: {location.get('name')}, {location.get('country')}")
print(f"??? Temperature: {current_weather.get('temperature')}°C")
print(f"?? Condition: {', '.join(current_weather.get('weather_descriptions', []))}")
print(f"?? Wind Speed: {current_weather.get('wind_speed')} km/h")
print(f"?? Humidity: {current_weather.get('humidity')}%")
print(f"?? Feels Like: {current_weather.get('feelslike')}°C")
一些用例
- 旅游和旅游應(yīng)用:為旅行者提供實(shí)時(shí)天氣更新,以便他們規(guī)劃行程。
- 農(nóng)業(yè)和農(nóng)業(yè)儀表板:幫助農(nóng)民監(jiān)測(cè)天氣狀況并根據(jù)數(shù)據(jù)做出有關(guān)灌溉、種植和收獲的決策。
6. 號(hào)碼驗(yàn)證 API
“即時(shí)全球電話(huà)號(hào)碼驗(yàn)證和查詢(xún)——快速可靠!”
作為開(kāi)發(fā)人員,您會(huì)發(fā)現(xiàn)自己經(jīng)常重復(fù)做的一件事就是構(gòu)建注冊(cè)表單和用戶(hù)身份驗(yàn)證系統(tǒng)。而這其中的關(guān)鍵部分是什么?電話(huà)號(hào)碼驗(yàn)證 — 因?yàn)槟阕畈幌M吹降氖呛诳屠眉偬?hào)碼或臨時(shí)號(hào)碼。但讓我們必須面對(duì)現(xiàn)實(shí), 從頭開(kāi)始構(gòu)建一個(gè)可靠的驗(yàn)證系統(tǒng)是一件非常令人頭疼的事情。
此 NumVerify API 可以通過(guò)提供一個(gè)簡(jiǎn)單的端點(diǎn)來(lái)解決您的所有問(wèn)題,使用該端點(diǎn)您可以獲得即時(shí)驗(yàn)證、國(guó)家/地區(qū)和運(yùn)營(yíng)商檢測(cè),甚至能夠區(qū)分手機(jī)號(hào)碼和固定電話(huà)號(hào)碼。
他們結(jié)構(gòu)良好的開(kāi)發(fā)人員文檔使集成變得毫不費(fèi)力,通過(guò)清晰的示例和用例指導(dǎo)您完成每一步。
import requests
phone_number = "14158586273"
url = f"https://api.apilayer.com/number_verification/validate?number={phone_number}"
payload = {}
headers= { "apikey": "YOUR_API_KEY"
}
response = requests.request("GET", url, headers=headers, data = payload)
status_code = response.status_codeprint(response.text)
一些用例
- 用戶(hù)身份驗(yàn)證和注冊(cè)驗(yàn)證:通過(guò)實(shí)時(shí)驗(yàn)證確保用戶(hù)使用有效的電話(huà)號(hào)碼注冊(cè)。
- 本地化用戶(hù)體驗(yàn)和特定國(guó)家/地區(qū)的功能:檢測(cè)用戶(hù)的國(guó)家/地區(qū)和運(yùn)營(yíng)商以自定義應(yīng)用設(shè)置、語(yǔ)言或貨幣。
7. 文本轉(zhuǎn)情感 API
“每個(gè)人的每種情感都很重要”
了解用戶(hù)反饋的語(yǔ)氣和情緒對(duì)于企業(yè)至關(guān)重要,尤其是在電子商務(wù)、客戶(hù)支持和社交媒體分析等領(lǐng)域。無(wú)論您是構(gòu)建 NLP 驅(qū)動(dòng)的聊天機(jī)器人、分析產(chǎn)品評(píng)論,還是自動(dòng)對(duì)大型數(shù)據(jù)集進(jìn)行情緒分析,識(shí)別用戶(hù)情緒都有助于改善決策和用戶(hù)體驗(yàn)。
這就是 Text to Emotion API 的作用所在。通過(guò)簡(jiǎn)單的 API 請(qǐng)求,您可以根據(jù)預(yù)先訓(xùn)練的 AI 模型分析任何文本,以檢測(cè)喜悅、憤怒、悲傷等情緒。他們直觀的開(kāi)發(fā)人員文檔將引導(dǎo)您完成無(wú)縫集成,并配有實(shí)時(shí)演示選項(xiàng)卡,讓您立即開(kāi)始使用。
import requests
url = "https://api.apilayer.com/text_to_emotion"
review = "The hotel service is worst, They should add a minus in front of 5 and make it a -5 star restaurant"
payload = f"{review}".encode("utf-8")
headers= { "apikey": "YOUR_API_KEY"}
response = requests.request("POST", url, headers=headers, data = payload)
status_code = response.status_code
result = response.text
print(result)
讓我們使用此 API 分析 Kaggle 上舉世聞名的酒店評(píng)論數(shù)據(jù)集,并檢查其前 30 條評(píng)論情緒。您可以在我的 Github Gist 上找到該項(xiàng)目的源代碼:Text_To_Emotion_Reviews.py
一些用例
- 客戶(hù)反饋和評(píng)論分析:分析產(chǎn)品評(píng)論以識(shí)別常見(jiàn)的用戶(hù)情緒(例如滿(mǎn)意、沮喪)。
- 聊天機(jī)器人和虛擬助手增強(qiáng):通過(guò)實(shí)時(shí)檢測(cè)用戶(hù)情緒來(lái)改善聊天機(jī)器人的響應(yīng)。
8. Pdflayer
“面向開(kāi)發(fā)人員的高質(zhì)量 HTML 到 PDF 轉(zhuǎn)換 API”
如果您正在構(gòu)建需要生成 PDF 格式的發(fā)票、報(bào)告或文檔的 Web 應(yīng)用程序,那么高效地將 HTML 轉(zhuǎn)換為 PDF 是必須的。編寫(xiě)自定義 PDF 生成代碼可能很復(fù)雜且耗時(shí)。
此 Pdflayer API 可以通過(guò)提供將 HTML 轉(zhuǎn)換為高質(zhì)量 PDF 文件的更簡(jiǎn)單的單行解決方案來(lái)節(jié)省大量時(shí)間。
import requests
# API URL with access key and document URL
URL = "https://realpython.com/python-news-february-2025/" ## URL You want to convert to PDFAPI_KEY = "YOUR_API_KEY"
url = f"http://api.pdflayer.com/api/convert?access_key={API_KEY}&document_url={URL}"
# Make the API request
response = requests.post(url)
# Check if the request was successful
if response.status_code == 200:
# Save the response content as a PDF file
with open("Feb_Roundup_Python.pdf", "wb") as pdf_file:
pdf_file.write(response.content)
print("? PDF downloaded successfully as 'Feb_Roundup_Python.pdf'")else:
print(f"? Failed to download PDF. Status Code: {response.status_code}")
不僅如此,使用此 API,您可以自定義 PDF、為其添加密碼、添加水印以及許多其他操作,您可以從 Pdflayer 官方文檔中了解這些操作。
一些用例
- 報(bào)告和文檔生成:SaaS 平臺(tái)可以將用戶(hù)生成的報(bào)告導(dǎo)出為可下載的 PDF。
- 數(shù)字簡(jiǎn)歷和作品集下載:求職門(mén)戶(hù)網(wǎng)站可以讓用戶(hù)將簡(jiǎn)歷導(dǎo)出為精美的可下載 PDF。
9. Bad Words API
“保持你的模型和數(shù)據(jù)庫(kù)干凈?。?!”
在電子商務(wù)中,用戶(hù)評(píng)論在塑造產(chǎn)品認(rèn)知方面起著至關(guān)重要的作用。但讓我們面對(duì)現(xiàn)實(shí)吧——有些用戶(hù)做得太過(guò)分了,留下純粹出于沮喪的評(píng)論。只需一個(gè)簡(jiǎn)單的請(qǐng)求,這個(gè) Bad Words API 就可以過(guò)濾或?qū)彶槿魏瘟钊朔锤谢虿贿m當(dāng)?shù)膬?nèi)容,甚至在它們到達(dá)您的平臺(tái)之前。他們的文檔包含大量示例和高級(jí)功能,您可以將其無(wú)縫集成到您的項(xiàng)目中。
import requests
import pandas as pd
from IPython.display
import display
# API request setup
url = "https://api.apilayer.com/bad_words?censor_character=censor_character"
review = "This product is absolute garbage! The quality is shit and the support team is useless as fuck. Total scam!"
headers = {"apikey": "GET_YOUR_OWN"}
# Make request
response = requests.post(url, headers=headers, data=review.encode("utf-8"))
# Parse JSON response
if response.status_code == 200:
data = response.json()
# Display Original & Censored Review
print(f"\033[1mOriginal Review:\033[0m {data['content']}") # \033[1m -> For Bold Text on Terminal \033[0m -> Reset formatting (stops bold and returns text to normal).
print(f"\033[1mCensored Review:\033[0m {data['censored_content']}")
print(f"\033[1mTotal Bad Words Found:\033[0m {data['bad_words_total']}\n")
# Convert bad words list to DataFrame
if data["bad_words_total"] > 0:
df = pd.DataFrame(data["bad_words_list"])[["original", "start", "end", "word"]]
df.columns = ["Bad Word", "Start Position", "End Position", "Detected Word"]
# Fix the warning by applying styles safely
styled_df = df.style.set_properties(
subset=['Bad Word'], **{'background-color': 'red', 'color': 'white', 'font-weight': 'bold'} )
display(styled_df) # Show styled DataFrame
else:
print("\033[92mNo bad words detected.\033[0m") # Green text for clean reviewselse:
print(f"\033[91mAPI request failed with status code {response.status_code}\033[0m") # Red error message
一些用例
游戲平臺(tái)和在線(xiàn)論壇:過(guò)濾多人聊天室中的惡意語(yǔ)言。
工作場(chǎng)所和企業(yè)溝通工具:通過(guò)過(guò)濾內(nèi)部聊天中的不當(dāng)詞語(yǔ)來(lái)保持專(zhuān)業(yè)性。
10. 簡(jiǎn)歷解析器 API
“招聘經(jīng)理想成為初戀”
招聘開(kāi)發(fā)人員就像大海撈針。您將淹沒(méi)在簡(jiǎn)歷中,每份簡(jiǎn)歷的格式和技能都不同。手動(dòng)篩選?那簡(jiǎn)直是一場(chǎng)噩夢(mèng)。
此簡(jiǎn)歷制作 API 通過(guò)提取技能、經(jīng)驗(yàn)和教育等關(guān)鍵詳細(xì)信息,讓篩選變得輕松無(wú)比 — 立即將候選人與您的要求進(jìn)行匹配。通過(guò)無(wú)縫集成節(jié)省數(shù)小時(shí)的工作時(shí)間,并探索文檔以解鎖更強(qiáng)大的招聘功能。
import requests
import json
# API Endpointresume_link = "https://assets.apilayer.com/apis/codes/resume_parser/sample_resume.docx"
url = f"https://api.apilayer.com/resume_parser/url?url={resume_link}"
headers = {"apikey": "GET_YOUR_OWN"}
response = requests.get(url, headers=headers)
if response.status_code == 200:
data = response.json() # Convert response to JSON
skills = data.get("skills", []) # Extract skills list
print("Extracted Skills:", skills)else:
print(f"? API request failed with status code {response.status_code}")
一些用例
自動(dòng)候選人篩選:立即從簡(jiǎn)歷中提取關(guān)鍵信息(技能、經(jīng)驗(yàn)、教育)。
金融科技和銀行業(yè)的數(shù)字入職培訓(xùn):從 PAN 卡中提取關(guān)鍵詳細(xì)信息并將其鏈接到客戶(hù)資料。
寫(xiě)在最后
在APILayer 市場(chǎng)上有 150 多個(gè)這樣的 API 等待大家探索——涵蓋從 AI 驅(qū)動(dòng)的文本分析到實(shí)時(shí)財(cái)務(wù)數(shù)據(jù)的所有內(nèi)容。
隨著AI的普及,學(xué)習(xí)和使用AI來(lái)提升工作效率,成為不可逆轉(zhuǎn)的趨勢(shì)。