使用 n8n 工作流程时,我们偶尔会遇到网页编码格式的问题。最近在使用 n8n 的 HTTP Request 节点访问编码为 GBK 的网页时,发现后续节点无法正常读取和处理数据。幸好,这个问题其实很简单,我们可以通过一些小技巧来解决。
问题背景
n8n 的 HTTP Request 节点默认只能处理 UTF-8 编码的网页。如果目标网页采用的是其他编码(比如 GBK),那么直接读取将导致数据无法正确解析。例如,在提取正文内容时,可能会出现乱码或者空白。
为了解决这个问题,我们需要将网页视为二进制文件进行重新加载。以下是详细步骤:
步骤一:使用 HTTP Request 节点获取网页
首先,继续使用 HTTP Request 节点,正常发送 GET 请求访问目标网页。确保你已正确配置好此节点,以便获取网页内容。
步骤二:增加 Extract From File 节点
- 添加节点:在工作流中增加一个 Extract From File 节点。
- 连接节点:将 HTTP Request 节点的输出连接到 Extract From File 节点,这样它能接收到请求得到的网页内容。
步骤三:设置文件编码
- 在 Extract From File 节点中,找到可选项设置。
- 打开 File Encoding 选项:确保选择了 Expression 模式。
- 手动输入编码格式:在输入框中填入
gbk
(注意只能是小写),以指示系统使用此编码格式读取网页。
步骤四:获取正常数据
完成上述步骤后,Extract From File 节点将输出经过处理的数据,现在这部分数据应该可以正常被后续的 n8n 节点读取和处理了。
总结
通过这种方式,即使面对非 UTF-8 编码的网页,我们也能顺利获取并处理数据。只需在 n8n 中调整一个节点的设置,不仅能解决问题,还能极大提高工作流程的效率。如果你在使用 n8n 的过程中遇到类似的问题,记得试试这个方法!也欢迎你将这篇文章分享给需要帮助的朋友,帮助他们更好地使用 n8n。