用于python的弹性站点搜索api客户端
elastic-site-search的Python项目详细描述
弹性站点搜索api的第一方python客户端。
内容
入门
您可以使用pip
:
pip install elastic-site-search
要在本地安装,请克隆此存储库,cd
到目录中并运行:
python setup.py install< Buff行情>
注意:此客户端仅为弹性站点搜索开发。有关其他上下文,请参阅弹性站点搜索api文档。
用法
创建弹性站点搜索帐户并从帐户设置中获取api密钥。
配置客户端:
< > >- 创建一个名为
的
引擎,例如
YouTube
: < > > - 创建您的
documenttype
s: < > > - 在打开拉取请求之前,请创建一个问题以讨论建议的范围。
- 请在适当的时候编写简单的代码和简明的文档。
fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
engine=client.create_engine('youtube')
client.create_document_type('youtube','videos');client.create_document_type('youtube','channels');
索引
现在您需要创建文档
s。考虑创建文档
的每个字段的类型非常重要。文档类型
属于的文档
将记住每个字段类型,并且无法更改它。类型指定了字段功能,您应该明智地选择它们。有关详细信息,请查看我们的字段类型文档
在视频中添加
文档
文档类型
:
client.create_document('youtube','videos',{'external_id':'external_id1','fields':[{'name':'title','value':'Site Search Demo','type':'string'},{'name':'tags','value':['Site Search','Search','Full text search'],'type':'string'},{'name':'url','value':'http://www.youtube.com/watch?v=pITuOcGgpBs','type':'enum'},{'name':'category','value':['Tutorial','Product'],'type':'enum'},{'name':'publication_date','value':'2012-05-08T12:07Z','type':'date'},{'name':'likes','value':31,'type':'integer'},{'name':'length','value':1.50,'type':'float'}]})
在频道中添加
文档
文档类型
:
client.create_document('youtube','channels',{'external_id':'external_id1','fields':[{'name':'title','value':'Elastic','type':'string'},{'name':'url','value':'http://www.youtube.com/user/elasticsearch','type':'enum'},{'name':'video_views','value':15678,'type':'integer'},{'name':'video_counts','value':6,'type':'integer'}]})
搜索
现在,您的 或立即在 最后,与全文搜索一样,您也可以执行自动完成样式(前缀匹配)搜索: 或 向api发出命令,使用api密钥配置客户端: 您可以在帐户设置中找到您的api密钥。
如果要在 将搜索限制为只搜索 这两种搜索方法都允许您将选项指定为额外的参数,例如筛选或排序字段。有关这些选项的更多详细信息,请查看搜索选项。下面是一个示例,仅显示 自动完成功能与搜索功能相同。您可以使用所有文档自动完成: 或者只针对一种文档类型: 或添加选项以更好地控制结果: 检索每个发动机
创建一个名为youtube的新引擎
通过 要删除 使用 显示第二批文档: 为 通过 使用 检索 使用其 创建一个新的 一次创建多个 更新由 一次更新多个文档
创建或更新 一次创建或更新多个 销毁 一次销毁多个 检索 通过 使用url 使用其 使用其 添加或更新 若要获取过去14天内对 您还可以使用特定的开始和/或结束日期: 要获取自动选择的数量(单击自动完成结果),请使用: 与搜索一样,您也可以按开始和/或结束日期进行限制: 如果您对 要查看更多热门查询,可以使用以下命令对其分页: 或者你可以得到顶级的Querie在特定日期范围内: 如果您想改进搜索结果,您应该始终查看不返回结果的搜索查询,并可能添加一些与此查询匹配的文档,或者使用我们的pining功能添加此查询的文档: 您还可以为无结果查询指定日期范围: 如果有些东西不能按预期工作,请打开问题 您最好阅读文档 您可以查看弹性站点搜索社区讨论论坛。
我们欢迎项目的贡献者。在开始之前,请注意… 感谢所有的贡献者!引擎已准备好接收查询。默认情况下,搜索查询将匹配
string
或text
类型的任何字段。您可以单独搜索每个文档类型
video_results=client.search_document_type('youtube','videos','site search')channel_results=client.search_document_type('youtube','channels','site search')
引擎上搜索所有
文档类型
s:
results=client.search('youtube','site search')
自动完成
pip install elastic-site-search
0
pip install elastic-site-search
1
API文档
配置:
fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
搜索
引擎中搜索例如
站点搜索,可以使用:
results=client.search('youtube','site search')
视频
文档类型:
pip install elastic-site-search
4
类别中的
视频
教程
:pip install elastic-site-search
5
自动完成
pip install elastic-site-search
0
pip install elastic-site-search
1
pip install elastic-site-search
8
发动机
pip install elastic-site-search
9
engine=client.create_engine('youtube')
slug
或id检索
引擎
:python setup.py install
1
引擎,您需要
引擎的
slug
或id
字段:python setup.py install
2
文档类型
slug
字段youtube检索
引擎的
文档类型
python setup.py install
3
python setup.py install
4
引擎创建一个名为
videos的新
文档类型
:python setup.py install
5
slug
或id检索
documenttype
:python setup.py install
6
slug
或id
删除文档类型:python setup.py install
7
文档
引擎的所有
文档和
文档类型
python setup.py install
8
id
或外部id检索特定的
文档
:python setup.py install
9
文档
,其中必须有外部id
和用户定义的字段:fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
0
文档并返回每个
文档的状态
创建:
fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
1
id
或外部id
指定的现有文档的字段:
fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
2
fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
3
文档
fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
4
文档
fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
5
文档
:fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
6
文档
fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
7
域
引擎的所有
域
fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
8
id
:fromelastic_site_searchimportClientclient=Client(api_key='YOUR_API_KEY')
9
https://elastic.co
创建一个新的domain
并开始爬网:engine=client.create_engine('youtube')
0
id删除域
engine=client.create_engine('youtube')
1
id
:engine=client.create_engine('youtube')
2
域的URL
:engine=client.create_engine('youtube')
3
分析
引擎的搜索量,请使用:
engine=client.create_engine('youtube')
4
engine=client.create_engine('youtube')
5
engine=client.create_engine('youtube')
6
engine=client.create_engine('youtube')
7
引擎的顶级查询感兴趣,可以使用:
engine=client.create_engine('youtube')
8
engine=client.create_engine('youtube')
9
client.create_document_type('youtube','videos');client.create_document_type('youtube','channels');
0
client.create_document_type('youtube','videos');client.create_document_type('youtube','channels');
1
client.create_document_type('youtube','videos');client.create_document_type('youtube','channels');
2
运行测试
client.create_document_type('youtube','videos');client.create_document_type('youtube','channels');
3
常见问题解答
我应该在哪里向客户报告问题?
在哪里可以了解有关网站搜索的更多信息?
我还能去哪里寻求帮助?
贡献
许可证
推荐PyPI第三方库