'commit'
This commit is contained in:
@@ -1,53 +1,28 @@
|
|||||||
from elasticsearch import Elasticsearch
|
|
||||||
import warnings
|
|
||||||
from Config import Config
|
from Config import Config
|
||||||
from Config.Config import ES_CONFIG
|
from ElasticSearch.Utils.EsSearchUtil import EsSearchUtil
|
||||||
import urllib3
|
|
||||||
|
|
||||||
# 抑制HTTPS相关警告
|
|
||||||
warnings.filterwarnings('ignore', message='Connecting to .* using TLS with verify_certs=False is insecure')
|
|
||||||
warnings.filterwarnings('ignore', message='Unverified HTTPS request is being made to host')
|
|
||||||
|
|
||||||
|
|
||||||
# 1. 初始化Elasticsearch连接
|
# 1. 创建EsSearchUtil实例(已封装连接池)
|
||||||
es = Elasticsearch(
|
search_util = EsSearchUtil(Config.ES_CONFIG)
|
||||||
hosts=Config.ES_CONFIG['hosts'],
|
|
||||||
basic_auth=Config.ES_CONFIG['basic_auth'],
|
|
||||||
verify_certs=False
|
|
||||||
)
|
|
||||||
|
|
||||||
# 2. 直接在代码中指定要查询的关键字
|
# 2. 直接在代码中指定要查询的关键字
|
||||||
query_keyword = "混凝土"
|
query_keyword = "混凝土"
|
||||||
|
|
||||||
# 3. 构建查询条件
|
# 3. 执行查询并处理结果
|
||||||
query = {
|
|
||||||
"query": {
|
|
||||||
"match": {
|
|
||||||
"user_input": query_keyword
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"size": 1000
|
|
||||||
}
|
|
||||||
|
|
||||||
# 4. 执行查询并处理结果
|
|
||||||
try:
|
try:
|
||||||
results = es.search(index=ES_CONFIG['index_name'], body=query)
|
# 使用连接池进行查询
|
||||||
|
results = search_util.text_search(query_keyword, size=1000)
|
||||||
print(f"查询关键字 '{query_keyword}' 结果:")
|
print(f"查询关键字 '{query_keyword}' 结果:")
|
||||||
if results['hits']['hits']:
|
if results['hits']['hits']:
|
||||||
for i, hit in enumerate(results['hits']['hits'], 1):
|
for i, hit in enumerate(results['hits']['hits'], 1):
|
||||||
doc = hit['_source']
|
doc = hit['_source']
|
||||||
print(f"{i}. ID: {hit['_id']}")
|
print(f"{i}. ID: {hit['_id']}")
|
||||||
print(f" 标签: {doc['tags']['tags']}")
|
print(f" 标签: {doc['tags']['tags'] if 'tags' in doc and 'tags' in doc['tags'] else '无'}")
|
||||||
print(f" 用户问题: {doc['user_input']}")
|
print(f" 用户问题: {doc['user_input'] if 'user_input' in doc else '无'}")
|
||||||
print(f" 时间: {doc['timestamp']}")
|
print(f" 时间: {doc['timestamp'] if 'timestamp' in doc else '无'}")
|
||||||
#print(f" 向量: {doc['embedding'][:5]}...")
|
|
||||||
print("-" * 50)
|
print("-" * 50)
|
||||||
else:
|
else:
|
||||||
print(f"未找到包含 '{query_keyword}' 的数据。")
|
print(f"未找到包含 '{query_keyword}' 的数据。")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
print(f"查询失败: {e}")
|
print(f"查询失败: {e}")
|
||||||
print(f"查询条件: {query}")
|
print(f"查询关键字: {query_keyword}")
|
||||||
if hasattr(e, 'info') and isinstance(e.info, dict):
|
|
||||||
print(f"Elasticsearch错误详情: {e.info}")
|
|
||||||
if hasattr(e, 'status_code'):
|
|
||||||
print(f"HTTP状态码: {e.status_code}")
|
|
Binary file not shown.
Reference in New Issue
Block a user