> ## Documentation Index
> Fetch the complete documentation index at: https://help.decodo.com/llms.txt
> Use this file to discover all available pages before exploring further.

# JavaScript 渲染

> 网页抓取 API JavaScript 渲染

## 什么是 JavaScript 渲染

JavaScript 渲染是在网页上执行 JavaScript 以生成动态内容的过程。动态内容是指在初始 HTML 交付后加载或更新的数据或元素。许多现代网站依赖 JavaScript 来加载数据并实时修改其布局。

## 不使用与使用 JavaScript 渲染的对比

不使用 JavaScript 渲染：

* 仅检索初始 `HTML`。
* 快速且资源高效，但会错过动态内容。

使用 JavaScript 渲染：

* 执行 JavaScript 以加载完整内容，包括动态数据。
* 速度较慢且资源密集，但对于现代动态网站至关重要。

## 何时使用 JavaScript 渲染

* **静态网站：** 不需要 JS 渲染。
* **动态网站：** 使用 JS 渲染来捕获完整内容。
* **交互元素：** 对于抓取用户交互背后的数据是必需的。例如，[**浏览器操作**](https://help.decodo.com/docs/cn/web-scraping-api-browser-actions)。

## 如何在请求中使用 JavaScript 渲染

要在请求中包含渲染，您需要添加 `headless` 参数，并将 `html` 或 `png` 设置为值。

<CodeGroup>
  ```shellscript cURL theme={null}
  # update 'TOKEN VALUE' with your authorization token
  curl --request 'POST' \
          --url 'https://scraper-api.decodo.com/v2/scrape' \
          --header 'Accept: application/json' \
          --header 'Authorization:Basic TOKEN VALUE' \
          --header 'Content-Type: application/json' \
          --data '
      {
        "url": "https://ip.decodo.com/ip",
        "headless": "html"
      }
  '
  ```
</CodeGroup>

当 headless 参数设置为 `png` 时，可以获得截图响应，详细了解[<u>此处</u>](https://help.decodo.com/docs/cn/screenshot)。

***

<Columns cols={2}>
  <Card title="支持" href="https://direct.lc.chat/12092754" cta="让我们聊聊！">
    需要帮助或只是想打个招呼？我们的支持团队全天候为您服务。 \
    您也可以随时通过电子邮件 [support@decodo.com](mailto:support@decodo.com) 联系我们。
  </Card>

  <Card title="反馈" href="mailto:feedback@decodo.com" cta="分享反馈">
    找不到您要找的内容？请求一篇文章！ \
    有反馈意见？分享您对我们如何改进的想法。
  </Card>
</Columns>
