Puppeteer + NodeJS 操作本地文件
昨天终于实现了用 Puppeteer
模拟人工操作,将本地文章自动发布到微信公众号。实现过程,学习了很多 Puppeteer+NodeJS
的知识点。把这些笔记分享在这(都是些零散笔记),希望能帮到有需要的人。
异步读文件
var fs = require('fs'); fs.readFile('sample.txt', 'utf-8', function (err, data) { if (err) { console.log(err); } else { console.log(data); } });
同步读文件
除了标准的异步读取模式外,fs也提供相应的同步读取函数。同步读取的函数和异步函数相比,多了一个 Sync 后缀,并且不接收回调函数,函数直接返回结果。
用 fs 模块同步读取一个文本文件的代码如下:
var fs = require('fs'); var data = fs.readFileSync('test.txt', 'utf-8'); console.log(data);
获取文件后缀名/拓展名
path 模块,NodeJS 自带的模块
var path=require('path'); var extname=path.extname("123.html"); //获取文件的后缀名 console.log(extname); //返回 .html
下面例子,返回 .md
const extname= path.extname(“guozh.md");
console.log(extname)
判断文件是不是图片
paths_array = [ "/home/user/website/index.html", "/home/user/website/style.css", "/home/user/website/bootstrap.css", "/home/user/website/main.js", "/home/user/website/contact_us.jpg" ] paths_array.forEach(filePath => { if (path.extname(filePath) == “.jpg") console.log(filePath); });
获取文件名
path.basename('/foo/bar/baz/asdf/quux.html') // returns ‘quux.html'
如果不想带后缀名/拓展名,使用如下方法
path.basename(fpath, path.extname(fpath)); //返回 quux
读取文件夹下每个文件内容
//获取文件夹下所有文件 const files = fs.readdirSync(dirPath); //循环遍历读取每个文件 for(const file of files){ //获取文件拓展名判断 const extname=path.extname(file); //判断文件格式类型 if(extname == ".md"){ //文件标题 title = path.basename(file, path.extname(file)); //获取文件的绝对路径 filePath = path.join(dirPath,file); //文件内容 contentMd = fs.readFileSync(filePath,"utf-8"); return; } }
行,都是些代码案例,我为了实现某些需求找出来的,通过它们,举一反三。
Puppeteer笔记
分类:
Puppeteer
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!