自由引入其他功能模块
JavaScript 是互联网上最流行的脚本语言之一,所有网页前端和客户端中都有它的身影,由于是一种类C语言,有着广泛的用户基础并且 JavaScript 很容易学习。
Node.js使用 npm 作为其默认的包管理器,该工具能够自动化处理项目依赖的安装、更新和删除。
npm 第三方功能库:https://www.npmjs.com/
任何传统编程能够实现的功能模块,都能整合进入我们的小瓶RPA自动化流程。
数据库模块
引入 mysql 数据库示例,其他数据库模块同理:
javascript
//引入小瓶RPA功能
const pbottleRPA = require('./pbottleRPA')
//引入第三方mysql连接功能 事先执行命令:npm install mysql
const mysql = require('mysql'); // 事先执行命令:npm install mysql
var connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : '123456',
database : 'test'
});
connection.connect();
connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) {
if (error) throw error;
console.log('The solution is: ', results[0].solution);
//使用小瓶RPA api接口
pbottleRPA.tts("mysql 获取数量为:" + results[0].solution)
});图片处理模块
引入 sharp 图片处理模块示例:
javascript
const pbottleRPA = require('./pbottleRPA') //引入小瓶RPA功能
const sharp = require('sharp'); // 事先执行命令:npm install sharp
// 缩放到指定宽度,高度自适应
sharp('input.jpg')
.resize(300, null)
.toFile('output.jpg');
// 保持长宽比并限制在指定尺寸内
sharp('input.jpg')
.resize(300, 300, {
fit: 'inside',
withoutEnlargement: true // 防止图片被放大
})
.toFile('output.jpg');Excel 和 Word 模块
先执行:npm install exceljs mammoth docx
- 参考demo示例:[第三方] 读写Excel演示脚本.mjs
- 参考demo示例:[第三方] 读写word演示脚本.mjs
生成 PDF 模块
生成一个简单的 PDF 文件的示例:
javascript
const pbottleRPA = require('./pbottleRPA') //引入小瓶RPA功能
const puppeteer = require('puppeteer'); // 事先执行命令:npm install sharp
async function htmlToPdf(htmlContent, outputPath) {
// 启动浏览器
const browser = await puppeteer.launch();
const page = await browser.newPage();
// 设置页面内容
await page.setContent(htmlContent);
// 等待页面加载(可选)
await page.waitForTimeout(1000); // 等待1秒,确保内容完全加载(如果有需要的话)
// 生成 PDF
await page.pdf({ path: outputPath, format: 'A4' });
// 关闭浏览器
await browser.close();
}
// HTML 内容示例
const htmlContent = `
<!DOCTYPE html>
<html>
<head>
<title>测试页面</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>这是一个使用 Node.js 和 Puppeteer 生成的 PDF。</p>
</body>
</html>
`;
// 输出路径
const outputPath = 'output.pdf';
// 调用函数生成 PDF
htmlToPdf(htmlContent, outputPath).catch(err => console.error('生成 PDF 失败:', err));
```javascript