无编辑摘要 |
|||
(未显示同一用户的8个中间版本) | |||
第1行: | 第1行: | ||
WebRender 为小可的外置服务,主要用于处理 Wiki infobox 图片渲染、 html 渲染以及部分功能的访问代理。 | |||
此服务使用 JavaScript 编写,并由 Puppeteer 驱动,因此需要安装 Node.js 环境,以及安装 Chromium 内核浏览器。 | 此服务使用 JavaScript 编写,并由 Puppeteer 驱动,因此需要安装 Node.js 环境,以及安装 Chromium 内核浏览器。 | ||
== | == 搭建 == | ||
请前往[https://github.com/Teahouse-Studios/oa-web-render 此处]下载源文件,并在终端内安装依赖。 | 请前往[https://github.com/Teahouse-Studios/oa-web-render 此处]下载源文件,并在终端内安装依赖。 | ||
<syntaxhighlight lang=" | <syntaxhighlight lang="sh"> | ||
npm install | |||
</syntaxhighlight> | </syntaxhighlight> | ||
前往[https://github.com/adieuadieu/serverless-chrome/releases 此处]下载任意版本 Chromium,或前往 Chromium 官方网站下载。 | 前往[https://github.com/adieuadieu/serverless-chrome/releases 此处]下载任意版本 Chromium,或前往 Chromium 官方网站下载。 | ||
于 <code>package.json</code> 同级目录 | 于 <code>package.json</code> 同级目录中新建 <code>.env</code> 文件,并填写以下字段: | ||
<pre> | <pre> | ||
第21行: | 第21行: | ||
使用 node 运行 <code>./src/index.js</code> 来开启服务。 | 使用 node 运行 <code>./src/index.js</code> 来开启服务。 | ||
<syntaxhighlight lang=" | <syntaxhighlight lang="sh"> | ||
node ./src/index.js | |||
</syntaxhighlight> | </syntaxhighlight> | ||
API 监听端口默认位于 15551,可自行选择 | API 监听端口默认位于 15551,可自行选择 自定义端口 。 | ||
请在[[配置文件]]中 <code>web_render</code> 配置项填写访问地址,如<code><nowiki>http://127.0.0.1:15551</nowiki></code>。 | 请在[[配置文件]]中 <code>web_render</code> 配置项填写访问地址,如 <code><nowiki>http://127.0.0.1:15551</nowiki></code>。 | ||
== | == API == | ||
以下为 Webrender API 的用法。 | 以下为 Webrender API 的 使 用 方 法。 | ||
===<code>/</code>=== | ===<code>/</code>=== |
2024年11月7日 (四) 00:49的最新版本
WebRender 为小可的外置服务,主要用于处理 Wiki infobox 图片渲染、 html 渲染以及部分功能的访问代理。
此服务使用 JavaScript 编写,并由 Puppeteer 驱动,因此需要安装 Node.js 环境,以及安装 Chromium 内核浏览器。
搭建
请前往此处下载源文件,并在终端内安装依赖。
npm install
前往此处下载任意版本 Chromium,或前往 Chromium 官方网站下载。
于 package.json
同级目录中新建 .env
文件,并填写以下字段:
CHROMIUM_PATH = # Chromium 可执行文件位置 FC_SERVER_PORT = 15551 # API 监听端口
使用 node 运行 ./src/index.js
来开启服务。
node ./src/index.js
API 监听端口默认位于 15551,可自行选择自定义端口。
请在配置文件中 web_render
配置项填写访问地址,如 http://127.0.0.1:15551
。
API
以下为 Webrender API 的使用方法。
/
- POST
此 API 可以生成网页内容截图。
请求参数
-
content
:要加载到页面的 HTML 内容。 -
width
(可选):截图的宽度,默认 500px。 -
height
(可选):截图的高度,默认 1000px。 -
mw
(可选):是否仅截取主要内容。 -
tracing
(可选):是否启用页面追踪,默认 False。
响应
- 成功:返回生成的 JPEG 格式页面截图。
- 失败:返回 500 错误。
/element_screenshot
- POST
此 API 可以生成指定元素的网页内容截图。
请求参数
element
:指定要截图的元素的 CSS 选择器,可以是单个字符串或字符串数组。-
content
(可选):要加载到页面的 HTML 内容。 -
url
(可选):要加载的页面的 URL。 -
css
(可选):要应用于页面的自定义 CSS 样式。 -
width
(可选):截图的宽度,默认 720px。 -
height
(可选):截图的高度,默认 1280px。 -
counttime
(可选):是否在截图中添加计时框,默认 True。 -
tracing
(可选):是否启用页面追踪,默认 False。
响应
- 成功:返回生成的 JPEG 格式页面截图。
- 失败:返回 500 错误。
/section_screenshot
- POST
此 API 可以生成网页中特定区域的内容截图。
请求参数
-
section
:要截取的区域的 HTML 元素的 ID。 -
content
(可选):要加载到页面的 HTML 内容。 -
url
(可选):要加载的页面的 URL。 -
css
(可选):要应用于页面的自定义 CSS 样式。 -
width
(可选):截图的宽度,默认 720px。 -
height
(可选):截图的高度,默认 1280px。 -
counttime
(可选):是否在截图中添加计时框,默认 True。 -
tracing
(可选):是否启用页面追踪,默认 False。
响应
- 成功:返回生成的 JPEG 格式页面截图。
- 失败:返回 500 错误。
/page
- POST
此 API 可以生成指定 URL 页面的截图。
请求参数
-
url
:要加载的页面的 URL。 -
css
(可选):要应用于页面的自定义 CSS 样式。
响应
- 成功:返回生成的 JPEG 格式页面截图。
- 失败:返回 500 错误。
/source
- GET
此 API 可以获取网页源代码。
请求参数
-
url
:要加载的页面的 URL。
响应
- 成功:返回请求的网页内容。
- 失败:返回 500 错误。
技术性 | ||
---|---|---|
部署 | ||
使用 | ||
开发 |