亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何檢查文件是否已在緩存中?

如何檢查文件是否已在緩存中?

LEATH 2023-05-23 10:50:30
我正在開發一種工具,可以在你的 Twitter 帳戶上發布來自游戲的 Ingame 新聞更新,在過去的幾天里,我搜索了一種解決方案,以找到一種方法來查看圖像是否已經在緩存中,這樣它就不會再次發布如果一個游戲的 News Feed 更新在線,它應該只發布新的并跳過舊的(實際上它會再次發布每個活動的 News Feed),問題是做不到。我測試了大約 100 次,但它不起作用。我真的希望你們中的任何一個能幫助我解決這個問題,因為如果這個工具能與這樣的方法一起工作,那就太棒了。提前感謝您的每一個幫助。這是我的代碼:import tweepyimport timefrom colorama import *init()auth = tweepy.OAuthHandler('API', 'APISECRET')auth.set_access_token('ACESS', 'ACESSSECRET')response = requests.get('https://fortnite-api.com/v2/news/br')newsData = response.json()["data"]#-----footer = '#Fortnite'delay = 5saveImages = True#-----while 1:    response = requests.get('https://fortnite-api.com/v2/news/br')    if response:        newsDataLoop = response.json()["data"]        print("2 - Checking for change in news feed...")        if newsData != newsDataLoop:        #if loop == True:            print("News Feed has changed...")            for i in newsDataLoop["motds"]:                try:                    print("Saving: "+i["id"])                    url = i["image"]                    r = requests.get(url, allow_redirects=True)                    open("NewsImages/"+i["id"]+'.png', 'wb').write(r.content)                    print("Saved: "+i["id"])                    try:                        api = tweepy.API(auth)                        api.update_with_media("NewsImages/"+i["id"]+'.png',"Fortnite News Update:\n\n"+i["title"]+":\n"+i["body"]+"\n\n"+footer)                        print("Tweeted: "+i["id"])                    except:                        print("Failed to tweet: "+i["id"])                    if saveImages == 'False':                        os.remove("NewsImages/"+i["id"]+'.png')                    response = requests.get('https://fortnite-api.com/v2/news/br')                    newsData = response.json()["data"]                except:                    print("Error in tweeting news feed: skipping")            print("Finished news feed publishing")    else:        print("FAILED TO GRAB NEWS DATA: URL DOWN")    time.sleep(delay)
查看完整描述

1 回答

?
慕村225694

TA貢獻1880條經驗 獲得超4個贊

您需要檢查每一個motd以查看它是否存在于舊數據集中。


import tweepy

import time

from colorama import *

init()


auth = tweepy.OAuthHandler('API', 'APISECRET')

auth.set_access_token('ACESS', 'ACESSSECRET')


response = requests.get('https://fortnite-api.com/v2/news/br')

newsData = response.json()["data"]



#-----

footer = '#Fortnite'

delay = 5

saveImages = True

#-----


while 1:

    response = requests.get('https://fortnite-api.com/v2/news/br')

    if response:

        newsDataLoop = response.json()["data"]

        print("2 - Checking for change in news feed...")


        if newsData != newsDataLoop:

        #if loop == True:

            print("News Feed has changed...")

            for i in newsDataLoop["motds"]:

                if i in newsData["motds"]:

                    # has already been posted

                    print("Already posted")

                    continue

                try:

                    print("Saving: "+i["id"])

                    url = i["image"]

                    r = requests.get(url, allow_redirects=True)

                    open("NewsImages/"+i["id"]+'.png', 'wb').write(r.content)

                    print("Saved: "+i["id"])

                    try:

                        api = tweepy.API(auth)

                        api.update_with_media("NewsImages/"+i["id"]+'.png',"Fortnite News Update:\n\n"+i["title"]+":\n"+i["body"]+"\n\n"+footer)

                        print("Tweeted: "+i["id"])

                    except:

                        print("Failed to tweet: "+i["id"])

                    if saveImages == 'False':

                        os.remove("NewsImages/"+i["id"]+'.png')


                    response = requests.get('https://fortnite-api.com/v2/news/br')

                    newsData = response.json()["data"]

                except:

                    print("Error in tweeting news feed: skipping")

            print("Finished news feed publishing")

    else:

        print("FAILED TO GRAB NEWS DATA: URL DOWN")


    time.sleep(delay)


查看完整回答
反對 回復 2023-05-23
  • 1 回答
  • 0 關注
  • 117 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號