AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

利用開放接口,如何一步步打造自己的獨特圖片網(wǎng)站

來源: 責編: 時間:2023-09-18 21:41:54 282觀看
導讀在進行文章撰寫時,尋找適當?shù)呐鋱D是一項重要的任務。然而,盡管我嘗試在各大網(wǎng)站上尋找合適的圖片資源,但往往面臨兩個主要問題:其一,這些網(wǎng)站大多需要付費使用,這無疑增加了我的經(jīng)濟負擔;其二,即使有些網(wǎng)站提供免費圖片,但其

在進行文章撰寫時,尋找適當?shù)呐鋱D是一項重要的任務。然而,盡管我嘗試在各大網(wǎng)站上尋找合適的圖片資源,但往往面臨兩個主要問題:其一,這些網(wǎng)站大多需要付費使用,這無疑增加了我的經(jīng)濟負擔;其二,即使有些網(wǎng)站提供免費圖片,但其質(zhì)量卻令人堪憂。5C128資訊網(wǎng)——每日最新資訊28at.com

為了解決這個令人頭疼的問題,我自己動手一個搜索圖片的網(wǎng)站,解決了日常文章配圖的問題。整體的界面如下:5C128資訊網(wǎng)——每日最新資訊28at.com

5C128資訊網(wǎng)——每日最新資訊28at.com

圖片的加載采用瀑布流的模式。5C128資訊網(wǎng)——每日最新資訊28at.com

這個網(wǎng)站是站在巨人的肩膀上完成的,為什么這么說呢?圖片的來源是調(diào)用頭條號的圖片庫,前端是使用github開源的瀑布流插件。5C128資訊網(wǎng)——每日最新資訊28at.com

分析頭條圖片庫的API

打開頭條號發(fā)布文章,點擊添加圖片,會出現(xiàn)如下圖5C128資訊網(wǎng)——每日最新資訊28at.com

5C128資訊網(wǎng)——每日最新資訊28at.com

通過分析這個接口,發(fā)現(xiàn)它并沒有做認證,攜帶幾個路徑參數(shù)。5C128資訊網(wǎng)——每日最新資訊28at.com

5C128資訊網(wǎng)——每日最新資訊28at.com

在無痕瀏覽器重放這個接口,這能正常獲取數(shù)據(jù),如下圖:5C128資訊網(wǎng)——每日最新資訊28at.com

5C128資訊網(wǎng)——每日最新資訊28at.com

現(xiàn)在圖片的數(shù)據(jù)源找到了,可以把它做成接口,給前端用戶調(diào)用了。這里我選擇熟悉的FastAPI做接口。5C128資訊網(wǎng)——每日最新資訊28at.com

接口代碼實現(xiàn)

從上述分析接口發(fā)現(xiàn),路徑參數(shù)只有三個參數(shù)是動態(tài)變化的。所以,我們把它做成變量的形式:5C128資訊網(wǎng)——每日最新資訊28at.com

from pydantic import BaseModelclass TuotiaoParams(BaseModel):    page: int=0#圖片頁數(shù)    size: int = 30#展示圖片的數(shù)量    term: str=None#搜索的關(guān)鍵字

然后,把請求頭條號API接口封裝成一個函數(shù),方便后續(xù)調(diào)用:5C128資訊網(wǎng)——每日最新資訊28at.com

import requestsfrom fake_useragent import UserAgentfrom schemas import TuotiaoParamsfrom loguru import loggerdef search_pic(params:TuotiaoParams):    try:        url = "https://dficimage.toutiao.com/api/proxy/get"        params = {            "from": params.page,            "size": params.size,            "term": params.term,            "search_id": 7274062948258316581,            "user_id": 68783357974,            "media_id": 1609422238702596,            "search_from": "search",            "position": "article_icstock",            "platform": "toutiaohao",            "path": "/micro/search"        }        res = requests.get(            url,            params=params,            headers={"User-Agent":UserAgent().random},            timeout=10            )        if res.json().get("code") == 1:            logger.info("獲取頭條的圖片的數(shù)據(jù):{}".format(res.json()))            return res.json().get("data").get("data").get("hits")    except Exception as e:        logger.error('抓取頭條的圖片錯誤:{}'.format(e))

利用FastAPI把頭條號API做成接口模式:5C128資訊網(wǎng)——每日最新資訊28at.com

from  fastapi import FastAPIfrom fastapi.middleware.cors import CORSMiddlewarefrom toutiao import search_picfrom schemas import SearchKeyWork,TuotiaoParamsimport uvicornapp = FastAPI()# 添加跨域中間件app.add_middleware(    CORSMiddleware,    allow_origins=["*"],  # 允許所有來源訪問    allow_methods=["*"],  # 允許所有HTTP方法    allow_headers=["*"],  # 允許所有HTTP頭)@app.post("/image_toutaio")def iamge_toutiao(params:TuotiaoParams):    return {"code":1,"data":search_pic(params)}if __name__ == "__main__":    uvicorn.run(app)

執(zhí)行如下代碼啟動程序,就可以正常訪問接口:5C128資訊網(wǎng)——每日最新資訊28at.com

python main.py

5C128資訊網(wǎng)——每日最新資訊28at.com

這樣后臺的接口,就完成了。5C128資訊網(wǎng)——每日最新資訊28at.com

前端搭建

前端采用的github上開源的瀑布流圖片展示模板,然后,自己添加搜索功能的。5C128資訊網(wǎng)——每日最新資訊28at.com

https://github.com/heikaimu/vue3-waterfall-plugin5C128資訊網(wǎng)——每日最新資訊28at.com

下載vue3-waterfall-plugin項目到本地,執(zhí)行如下代碼安裝依賴:5C128資訊網(wǎng)——每日最新資訊28at.com

pnpm install

安裝完依賴,執(zhí)行如下代碼,啟動前端:5C128資訊網(wǎng)——每日最新資訊28at.com

pnpm run dev

啟動成功之后,輸入想要的圖片進行搜索,如圖:5C128資訊網(wǎng)——每日最新資訊28at.com

5C128資訊網(wǎng)——每日最新資訊28at.com

  • 項目的地址: https://github.com/didiplus/vue3-waterfall-plugin
  • 演示地址: http://img.kwpmp.cn/
  • 演示備用地址: https://cerulean-florentine-527213lify.app/

本文鏈接:http://www.tebozhan.com/showinfo-26-10473-0.html利用開放接口,如何一步步打造自己的獨特圖片網(wǎng)站

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Python應知小技巧:如何用更少的代碼做更多的事情

下一篇: C語言操作寄存器和函數(shù)指針

標簽:
  • 熱門焦點
  • 6月安卓手機性價比榜:Note 12 Turbo斷層式碾壓

    6月份有一個618,雖然這是京東周年慶的日子,但別的電商也都不約而同的跟進了,反正促銷沒壞處,廠商和用戶都能滿意。618期間一些產(chǎn)品也出現(xiàn)了歷史低價,那么各個價位段的產(chǎn)品性價比
  • 5月安卓手機好評榜:魅族20 Pro奪冠

    性能榜和性價比榜之后,我們來看最后的安卓手機好評榜,數(shù)據(jù)來源安兔兔評測,收集時間2023年5月1日至5月31日,僅限國內(nèi)市場。第一名:魅族20 Pro好評率:97.50%不得不感慨魅族老品牌還
  • Rust中的高吞吐量流處理

    作者 | Noz編譯 | 王瑞平本篇文章主要介紹了Rust中流處理的概念、方法和優(yōu)化。作者不僅介紹了流處理的基本概念以及Rust中常用的流處理庫,還使用這些庫實現(xiàn)了一個流處理程序
  • 分布式系統(tǒng)中的CAP理論,面試必問,你理解了嘛?

    對于剛剛接觸分布式系統(tǒng)的小伙伴們來說,一提起分布式系統(tǒng),就感覺高大上,深不可測。而且看了很多書和視頻還是一臉懵逼。這篇文章主要使用大白話的方式,帶你理解一下分布式系統(tǒng)
  • 小米汽車電池信息疑似曝光:容量101kWh,支持800V高壓快充

    7月14日消息,今日一名博主在社交媒體發(fā)布了一張疑似小米汽車電池信息的照片,顯示該電池包正是寧德時代麒麟電池,容量為101kWh,電壓為726.7V,可以預測小
  • 回歸OPPO兩年,一加贏了銷量,輸了品牌

    成為OPPO旗下主打性能的先鋒品牌后,一加屢創(chuàng)佳績。今年618期間,一加手機全渠道銷量同比增長362%,憑借一加 11、一加 Ace 2、一加 Ace 2V三款爆品,一加
  • 聯(lián)想YOGA 16s 2022筆記本將要推出,屏幕支持觸控功能

    聯(lián)想此前宣布,將于11月2日19:30召開聯(lián)想秋季輕薄新品發(fā)布會,推出聯(lián)想 YOGA 16s 2022 筆記本等新品。官方稱,YOGA 16s 2022 筆記本將搭載 16 英寸屏幕,并且是一
  • 蘋果MacBook Pro 2021測試:仍不支持平滑滾動

    據(jù)10月30日9to5 Mac 消息報道,蘋果新的 14 英寸和 16 英寸 MacBook Pro 2021 上市后獲得了不錯的評價,亮點包括行業(yè)領(lǐng)先的性能,令人印象深刻的電池續(xù)航,精美豐
  • 電博會與軟博會實現(xiàn)"線下+云端"的雙線融合

    在本次“電博會”與“軟博會”雙展會利好條件的加持下,既可以發(fā)揮展會拉動人流、信息流、資金流實現(xiàn)快速交互流動的作用,繼而推動區(qū)域經(jīng)濟良性發(fā)展;又可以聚
Top