You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

129 lines
2.3 KiB
Python

# -*- coding: utf-8 -*-
# @Time : 2025/5/13 10:41
# @Author : zhaoxiangpeng
# @File : enum_cls.py
import enum
from datetime import timedelta
class ResourceType(enum.Enum):
"""资源类型"""
JOURNAL = "YSTT4HG0" # 学术期刊
DISSERTATION = "LSTPFY1C" # 学位论文
CONFERENCE = "JUP3MUPD" # 会议
NEWSPAPER = "MPMFIG1A" # 报纸
ALMANAC = "HHCPM1F8"
BOOK = "EMRPGLPA"
PATENT = "VUDIXAIY"
STANDARD = "WQ0UVIAA"
ACHIEVEMENTS = "BLZOG7CK"
class SearchTypeId(enum.Enum):
"""知网的检索类型"""
ADV = 1
SIMPLE = 2
AUTHOR = 3
EXPERT = 4 # 专业检索
SENTENCE = 5
'''
GROUP = 6
PAGE = 7
SORT = 8
ABSTRACT = 9
MORESENTENCE = 10
HISTORY = 11
SIZE = 12
RESULT = 13
ADVRESULT = 14
EXPERTRESULT = 15
AUTHORRESULT = 16
SENRESULT = 17
CROSSDBCHANGEDB = 18
COMBOHISTORY = 19
'''
class SearchFromId(enum.Enum):
SEARCH = 1
GROUPSEARCH = 2
RESULT = 3
PAGE = 4
SORT = 5
CHANGEDB = 6
DISPLAYMODEL = 7
NAVISEARCH = 8
HISTORY = 9
COMBOHISTORY = 10
CROSSDBCHANGEDB = 11
CHANGELANG = 12
GROUP = 99
class SearchFieldEnum(enum.Enum):
"""文献元数据字段枚举类"""
SU = "主题"
TKA = "篇关摘"
TI = "篇名"
KY = "关键词"
AB = "摘要"
CO = "小标题"
FT = "全文"
AU = "作者"
FI = "第一作者"
RP = "通讯作者"
AF = "作者单位"
LY = "期刊名称"
RF = "参考文献"
FU = "基金"
CLC = "中图分类号"
SN = "ISSN"
CN = "CN"
DOI = "DOI"
QKLM = "栏目信息"
FAF = "第一单位"
CF = "被引频次"
class OperatorEnum(enum.Enum):
模糊 = "FUZZY"
精确 = "DEFAULT"
class OperatorTypeEnum(enum.Enum):
DEFAULT = 0
TOPRANK = 1
FUZZY = 2
GT = 3
GE = 4
LT = 5
LE = 6
BETWEEN = 7
FREQUENCY = 8
PREFIX = 9
SUFFIX = 10
CONTAINS = 11
NEAR = 12
SENTENCE = 13
IS = 14
FUZZYFREQUENCY = 15
class LogicEnum(enum.Enum):
AND = 0
OR = 1
NOT = 2
class UpdatedTimeEnum(enum.Enum):
"""
最近一段时间的枚举
"""
最近一周 = timedelta(days=7)
最近一月 = timedelta(days=30)
最近半年 = timedelta(days=180)
最近一年 = timedelta(days=180)
今年迄今 = timedelta(days=180)