Flask扩展,用于提供查询webteam的Google自定义搜索账户的搜索视图
项目描述
canonicalwebteam.search
Flask扩展,用于提供查询webteam的Google自定义搜索账户的搜索视图。
安装
pip3安装canonicalwebteam.search
或将canonicalwebteam.search
添加到您的requirements.txt
文件中。
使用
需求
如果您使用Flask-Base,您需要使用至少2.0.0版本。如果您不是,您至少需要Flask@2.3.0。
本地开发
对于本地开发,最好使用我们的一些网站项目(如ubuntu.com)测试此模块。有关更多信息,请参阅此指南(仅限内部使用)。
应用程序代码
您可以在项目的应用程序中添加扩展,如下所示
import talisker.requests
from flask import Flask
from canonicalwebteam.search import build_search_view
app = Flask("myapp") # You must provide app
session = talisker.requests.get_session() # You must provide a requests session
app.add_url_rule("/search", "search", build_search_view(app, session))
# Or, a bit more complex example
app.add_url_rule(
"/docs/search",
"docs-search",
build_search_view(
app=app # required in version 1.4.0 onwards
session=session,
site="maas.io/docs",
template_path="docs/search.html",
search_engine_id="xxxxxxxxxx", # Optional argument, required by some of our sites
request_limit="500/day", # Allows your to configure the limit at which the user will be forbidden to query more. If omitted defaults to 2/second, 100/minute, 2000/day
)
)
模板
您需要在指定的template_path
处创建一个HTML模板。默认情况下,这将是您的模板文件夹中的search.html
。此模板将传递以下数据
{{ query }}
-q=
搜索查询参数的内容{{ start }}
-start=
查询参数的内容 - 返回结果的起始偏移量(用于分页 - 默认为0){{ num }}
-num=
查询参数的内容 - 返回的搜索结果数量(默认10个){{ results }}
- 来自Google自定义搜索查询的结果。实际的搜索结果位于{{ results.entries }}
中。
API密钥
您需要在服务器启动时提供Google自定义搜索API的API密钥,作为名为SEARCH_API_KEY
的环境变量 - 例如:
SEARCH_API_KEY=xxxxx FLASK_APP=app.py flask run
完成此操作后,您应该能够在您的网站上访问/search?q={some_query}
并看到使用您的search.html
模板构建的搜索结果。
对于某些网站,您需要将特定的搜索引擎ID(cx)传递给build_search_view
,您可以在自定义搜索引擎页面中找到它。
新网站
如果您创建了一个新网站且API没有返回任何结果,您可能需要将其添加到Google自定义搜索引擎的网站列表中。如果您在此页面上看不到任何网站,请联系Web团队。
项目详情
下载文件
下载适用于您的平台文件。如果您不确定选择哪一个,请了解有关安装包的更多信息。
源分发
canonicalwebteam_search-2.1.1.tar.gz (14.1 kB 查看哈希)
构建分发
关闭
哈希 for canonicalwebteam.search-2.1.1-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | ec6be1197a866aceb366cd0cc4cf5268c80536f075e2bf0623b752bf97c4d952 |
|
MD5 | cdcbbcbb5f36df48e52ab0c6e75ce840 |
|
BLAKE2b-256 | 5b1c816898470f6586204c27566086698ae137a539f96f6bcaabb1e84f9845ff |