[問題] telegram反應非常慢...
我寫的程式如下
import requests
import urllib.parse
def sendMessage( botID, chatID, message):
str="https://api.telegram.org/bot"+botID\
+"/sendMessage?chat_id="+chatID+"&text="\
+urllib.parse.quote_plus(message)
response= requests.get(str)
try:
js=response.json()
except:
js=dict()
js["error"]=response.text
return js
meID="123456"
botID="oooo:xxxx"
js=sendMessage(botID,meID,"test")
print(js)
程式可以發訊,可是反應非常慢
大概要5-10分鐘才會發出訊息
記得以前沒這問題,不曉得是有什麼地方需要改良嗎?
自問自答
發現是網路的問題,不過不確定發生原因,
在遠端主機測試正常
自己的電腦得把requests加上timeout也可以運作,
response= requests.get(str, timeout=1)
這樣就可以正確跑了,
不過這樣一來反應就變慢了,
不知道有人可以抓出原因嗎?
同樣的程式,去抓其他網址都沒問題,
只有telegram的api才會有這問題....
--
sent from my IBM 5100
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.127.163.139 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1654410452.A.E63.html
※ 編輯: storypp (59.127.163.139 臺灣), 06/05/2022 15:54:19
※ 編輯: storypp (59.127.163.139 臺灣), 06/05/2022 15:55:05
推
06/05 19:45,
1年前
, 1F
06/05 19:45, 1F
→
06/05 19:45,
1年前
, 2F
06/05 19:45, 2F
是期待值沒錯,看起來就像是收到資料可是一直沒斷線,
因為一直沒斷線所以程式就沒辦法把值傳下去,
用了timeout後就斷線可以繼續走下去,
只是很疑惑,為什麼會發生資料傳完卻沒斷線繼續執行下去,
(大約等5-10分鐘還是會把正確值print出來)
我用其他電腦執行程式倒是沒這問題...
※ 編輯: storypp (59.127.163.139 臺灣), 06/05/2022 20:45:21
→
06/06 09:22,
1年前
, 3F
06/06 09:22, 3F
我除了get也有用post去試,結果都是要等將近10分鐘才會有動作...
※ 編輯: storypp (59.127.163.139 臺灣), 06/07/2022 02:22:54
→
06/07 23:09,
1年前
, 4F
06/07 23:09, 4F
→
06/09 06:43,
1年前
, 5F
06/09 06:43, 5F