添加 spider_notify.py 注释

jyf_branch
姜雨菲 4 months ago
parent 0d6a820db6
commit ae31a3a99b

@ -3,19 +3,43 @@ import logging
import requests
from django.conf import settings
# 创建当前模块的日志记录器,用于记录通知相关的日志信息
logger = logging.getLogger(__name__)
class SpiderNotify():
"""
搜索引擎爬虫通知类
用于向搜索引擎目前支持百度提交网站URL告知内容更新便于爬虫抓取
"""
@staticmethod
def baidu_notify(urls):
"""
向百度搜索引擎提交URL的静态方法
通过百度链接提交通知接口告知百度新增/更新的页面URL
Args:
urls (list): 需要提交的URL列表每个元素为完整的页面URL字符串
"""
try:
# 将URL列表用换行符拼接符合百度接口的数据格式要求
data = '\n'.join(urls)
# 向百度通知接口发送POST请求提交URL数据
result = requests.post(settings.BAIDU_NOTIFY_URL, data=data)
# 记录接口返回的响应信息日志级别INFO
logger.info(result.text)
except Exception as e:
# 捕获所有异常并记录错误信息日志级别ERROR
logger.error(e)
@staticmethod
def notify(url):
SpiderNotify.baidu_notify(url)
"""
通用通知入口静态方法
统一调用百度通知方法便于后续扩展支持其他搜索引擎
Args:
url (list): 需要提交的URL列表与baidu_notify方法的urls参数格式一致
"""
SpiderNotify.baidu_notify(url)
Loading…
Cancel
Save