优化异常处理,防止程序闪退
This commit is contained in:
28
robot.py
28
robot.py
@@ -192,8 +192,8 @@ class Robot(Job):
|
|||||||
if msg.content == "^更新$":
|
if msg.content == "^更新$":
|
||||||
self.config.reload()
|
self.config.reload()
|
||||||
self.LOG.info("已更新")
|
self.LOG.info("已更新")
|
||||||
if msg.content == "今日36氪新闻" :
|
if msg.content == "今日百度新闻":
|
||||||
self.newsReport()
|
self.newsBaiduReport()
|
||||||
if msg.content == '聊天排行榜':
|
if msg.content == '聊天排行榜':
|
||||||
self.generateAndSendRanking()
|
self.generateAndSendRanking()
|
||||||
if msg.content == '聊天数据入库':
|
if msg.content == '聊天数据入库':
|
||||||
@@ -287,21 +287,14 @@ class Robot(Job):
|
|||||||
self.allContacts[msg.sender] = nickName[0]
|
self.allContacts[msg.sender] = nickName[0]
|
||||||
self.sendTextMsg(f"Hi {nickName[0]},我自动通过了你的好友请求。", msg.sender)
|
self.sendTextMsg(f"Hi {nickName[0]},我自动通过了你的好友请求。", msg.sender)
|
||||||
|
|
||||||
def newsReport(self) -> None:
|
|
||||||
receivers = self.config.NEWS
|
|
||||||
if not receivers:
|
|
||||||
return
|
|
||||||
|
|
||||||
news = News().get_36kr_news()
|
|
||||||
for r in receivers:
|
|
||||||
self.sendTextMsg(news, r)
|
|
||||||
|
|
||||||
def newsBaiduReport(self) -> None:
|
def newsBaiduReport(self) -> None:
|
||||||
|
try:
|
||||||
receivers = self.config.NEWS
|
receivers = self.config.NEWS
|
||||||
if not receivers:
|
if not receivers:
|
||||||
return
|
return
|
||||||
news = News().get_baidu_news()
|
news = News().get_baidu_news()
|
||||||
news = (f"请根据新闻标题,按照新闻的类型(财经、彩票、房产、股票、家居、教育、科技、社会、时尚、时政、体育、星座、游戏、娱乐)进行分类;内容前加入当前日期和星期几" \
|
news = (
|
||||||
|
f"请根据新闻标题,按照新闻的类型(财经、彩票、房产、股票、家居、教育、科技、社会、时尚、时政、体育、星座、游戏、娱乐)进行分类;内容前加入当前日期和星期几" \
|
||||||
"内容格式如下:" \
|
"内容格式如下:" \
|
||||||
"### 分类1" \
|
"### 分类1" \
|
||||||
"1.#标题1" \
|
"1.#标题1" \
|
||||||
@@ -311,8 +304,11 @@ class Robot(Job):
|
|||||||
rsp = self.chat.get_answer(news)
|
rsp = self.chat.get_answer(news)
|
||||||
for r in receivers:
|
for r in receivers:
|
||||||
self.sendTextMsg(rsp, r)
|
self.sendTextMsg(rsp, r)
|
||||||
|
except Exception as e:
|
||||||
|
self.LOG.error(f"newsBaiduReport error:{e}")
|
||||||
|
|
||||||
def newsEnReport(self, website) -> None:
|
def newsEnReport(self, website) -> None:
|
||||||
|
try:
|
||||||
receivers = self.config.NEWS
|
receivers = self.config.NEWS
|
||||||
if not receivers:
|
if not receivers:
|
||||||
return
|
return
|
||||||
@@ -320,8 +316,11 @@ class Robot(Job):
|
|||||||
news = News().get_eng_news(website)
|
news = News().get_eng_news(website)
|
||||||
for r in receivers:
|
for r in receivers:
|
||||||
self.sendTextMsg(news, r)
|
self.sendTextMsg(news, r)
|
||||||
|
except Exception as e:
|
||||||
|
self.LOG.error(f"newsEnReport error:{e}")
|
||||||
|
|
||||||
def sendEpicFreeGames(self):
|
def sendEpicFreeGames(self):
|
||||||
|
try:
|
||||||
receivers = self.config.NEWS
|
receivers = self.config.NEWS
|
||||||
if not receivers:
|
if not receivers:
|
||||||
return
|
return
|
||||||
@@ -329,8 +328,8 @@ class Robot(Job):
|
|||||||
games = get_free()
|
games = get_free()
|
||||||
for r in receivers:
|
for r in receivers:
|
||||||
self.sendTextMsg(games, r)
|
self.sendTextMsg(games, r)
|
||||||
|
except Exception as e:
|
||||||
|
self.LOG.error(f"sendEpicFreeGames error:{e}")
|
||||||
|
|
||||||
def messageCountToDB(self):
|
def messageCountToDB(self):
|
||||||
try:
|
try:
|
||||||
@@ -347,4 +346,3 @@ class Robot(Job):
|
|||||||
self.sendTextMsg(generate_and_send_ranking(r, self.allContacts), r)
|
self.sendTextMsg(generate_and_send_ranking(r, self.allContacts), r)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self.LOG.error(f"SendRanking error:{e}")
|
self.LOG.error(f"SendRanking error:{e}")
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user