网页qq抓取什么原理(微信群中使用自动化实现类似功能的微信机器人的方法介绍)

优采云 发布时间: 2022-04-15 02:17

  网页qq抓取什么原理(微信群中使用自动化实现类似功能的微信机器人的方法介绍)

  前言

  在微信群里,经常会有一些微信群主定期发一些快讯。这次给大家介绍一种使用自动化实现微信机器人类似功能的方法。

  实现功能介绍

  网站作为专业获取信息的重要来源,很多人经常访问。今天教大家的自动化,就是将这个网站当前的内容以自动化的方式保存成PDF文件,然后发到微信群里分享给群友。

  原理大致如下:

  

  所用工具的主要代码实现

  打开 CukeTest 并根据您的业务需求编辑功能文件:

  # language: zh-CN

功能: 自动化微信

自动抓取hacker news 保存为pdf并分享到微信群。

@puppeteer

场景: 使用puppeteer自动抓取Hacker News并保存为pdf

假如使用puppeteer打开"https://news.ycombinator.com/"

同时将当前页面内容保存为到PDF文件中

@WeChat

场景: Windows桌面微信发送群

假如打开微信群,选择文档

当打开pdf文件

同时点击发送,发送给群友

  作为行为驱动的脚本,功能文件可以使脚本非常可读。

  

  傀儡师

  Puppeteer 是 Google Chrome 团队的官方无头 Chrome 工具。它是一个 Node.js 库,提供高级 API 以通过 DevTools 协议控制无头 Chrome。使用这个库可以非常方便地将页面导出为 pdf 文档。

  具体API请参考文档:

  // 主要实现代码

......

//打开页面

await page.goto('https://news.ycombinator.com', {waitUntil: 'networkidle2'});

//保存到pdf

await page.pdf({path: 'hn.pdf', format: 'A4'});

......

  相比通过 Selenium 调用 Chrome,它的优势是速度更快,功能更丰富。

  库克测试

  CukeTest 是 Node.js 自动化脚本的编辑工具。它内置了一个库,用于在Windows桌面上操作Windows控件和操作微信。

  指示:

  为微信Windows桌面应用创建对象模型文件,在模型文件中添加需要操作的控件。如何操作Windows控件,请参考免费教学视频()

  调用操作对象API

  //主要实现代码

......

Given(/^打开微信群,选择文档$/, async function () {

await model.getVirtual("发送文件").click(0, 0, 1);

});

When(/^打开pdf文件$/, async function () {

await model.getEdit("文件名(N):1").set('hn.pdf');

await model.getGeneric("打开(O)").click(0, 0, 1);

});

When(/^点击发送,发送给群友$/, async function () {

await model.getVirtual("发送").click(0, 0, 1);

});

......

  跑

  点击运行按钮运行。如果想每天定时运行,可以将此脚本配置为定时任务或Jenkins作业运行。

  总结

  在这个例子中,我们使用 Node.js + Cucumber 框架使代码更具可读性,使用 Puppeteer 作为自动化库来抓取内容,并使用 CukeTest 编辑工具,它也提供了 Windows 自动化功能。

  如果不想发PDF,也可以用Puppeteer定时截取网页上的文字发到微信,实时性更强。

  CukeTest 使您能够自动化您的 Windows、Web、API 或移动应用程序。结合丰富的 Node.js 开源库,你可以发挥无穷无尽的想象力,做各种好玩有趣的自动化。如果您对自动化流程有好的想法或遇到问题,欢迎加入我们的学习群讨论。群:707467292

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线