赞
踩
每天早上8点跑定时任务,使用自己的微信小号给群里推送新闻
一台阿里云服务器
注册微秘书和天行数据,微秘书需要充20块钱,可以用一个月
我理解的大概流程就是这样,微秘书客户端相当于一个桌面版微信,需要扫码登录
@Component
public class NewsTask {
@Autowired
private WeChatService weChatService;
@Autowired
private NewsService newsService;
@Scheduled(cron = "0 0 8 * * ?")
public void newsCron() {
String news = newsService.getNews();
weChatService.sendToRoom(news, "有钱才算自由");
}
}
@Service public class WeChatService { @Autowired private RestTemplate restTemplate; public static final String WEI_MI_SHU_API = "https://api-bot.aibotk.com"; public static final String WEI_MI_SHU_KEY = "你自己的key"; public void sendToRoom(String content, String roomName) { String url = WEI_MI_SHU_API + "/openapi/v1/chat/room"; WeiMiShuVO weiMiShuVO = new WeiMiShuVO(); weiMiShuVO.setType(1); weiMiShuVO.setContent(content); JSONObject object = new JSONObject(); object.set("apiKey", WEI_MI_SHU_KEY); object.set("roomName", roomName); object.set("message", weiMiShuVO); String response = restTemplate.postForObject(url, object, String.class); System.out.println(response); } }
NewsService中爬虫这步比较麻烦,这里先省略了,可以看具体代码。新闻内容我没有用天行数据的,因为我觉得那个新闻内容很差。我是爬的公众号每日资讯简报中的内容,非常优质。
这里协议选大恩,比较稳定,web协议很不稳定
登录到阿里云,先安装docker。
再拉取微秘书的docker镜像,相关文档在这里https://github.com/leochen-g/wechat-assistant-pro
docker pull aibotk/wechat-assistant
后台运行微秘书客户端
docker run -d -e AIBOTK_KEY="微秘书apikey" -e AIBOTK_SECRET="微秘书apiSecret" --name=wechatbot aibotk/wechat-assistant
启动以后查看日志
docker logs -f --tail=300 镜像id
日志中会打印二维码,用手机扫描登录
最后一步,部署启动我自己的应用,可参考我之前这篇用springboot做一个雨雪天气给自己发邮件的项目
全部部署完之后用这个接口测试一下,看有没有往微信群里推送消息
@RestController @RequestMapping("/news") public class NewsController { @Autowired private WeChatService weChatService; @Autowired private NewsService newsService; @GetMapping("/send") public String sendWeatherReport() { try { String news = newsService.getNews(); weChatService.sendToRoom(news, "有钱才算自由"); } catch (Exception e) { e.printStackTrace(); return "发送失败"; } return "发送成功"; } }
https://github.com/mundane799699/myprojects/tree/master/mail
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。