ニコニコ取得範囲の変更とリクエストのタイムアウト設定

このコミットが含まれているのは:
2024-09-09 12:28:55 +09:00
コミット b7433ade9f
+14 -5
ファイルの表示
@@ -6,6 +6,7 @@ import sys
from atproto import Client, models from atproto import Client, models
from bs4 import BeautifulSoup from bs4 import BeautifulSoup
from requests.exceptions import Timeout
import requests import requests
from ai.talk import Talk from ai.talk import Talk
@@ -95,8 +96,13 @@ def main (
uri = f"https://www.nicovideo.jp/watch/{ datum['contentId'] }" uri = f"https://www.nicovideo.jp/watch/{ datum['contentId'] }"
(title, description, thumbnail) = get_embed_info (uri) (title, description, thumbnail) = get_embed_info (uri)
upload = client.com.atproto.repo.upload_blob ( try:
io.BytesIO (requests.get (thumbnail).content)) upload = client.com.atproto.repo.upload_blob (
io.BytesIO (requests.get (thumbnail,
timeout = 60).content))
thumb = upload.blob
except Timeout:
thumb = None
embed_external = models.AppBskyEmbedExternal.Main ( embed_external = models.AppBskyEmbedExternal.Main (
external = models.AppBskyEmbedExternal.External ( external = models.AppBskyEmbedExternal.External (
@@ -155,7 +161,7 @@ def get_nico_deerjika ():
'/contents/search') '/contents/search')
now = datetime.now () now = datetime.now ()
base = now - timedelta (hours = 1) base = now - timedelta (hours = 4)
params = { 'q': '伊地知ニジカ', params = { 'q': '伊地知ニジカ',
'targets': 'tags', 'targets': 'tags',
@@ -173,7 +179,10 @@ def get_nico_deerjika ():
% (now.year, now.month, now.day)), % (now.year, now.month, now.day)),
'include_lower': True }] }) } 'include_lower': True }] }) }
res = requests.get (URL, params = params).json () try:
res = requests.get (URL, params = params, timeout = 60).json ()
except Timeout:
return []
data = [] data = []
for datum in res['data']: for datum in res['data']:
@@ -192,7 +201,7 @@ def get_embed_info (
try: try:
res = requests.get (url, timeout = 60) res = requests.get (url, timeout = 60)
except Exception: except Timeout:
return ('', '', '') return ('', '', '')
if res.status_code != 200: if res.status_code != 200: