Java实现将每日新闻添加到自己博客中

目录
  • 前言
  • why
  • 思路
  • 代码实现

前言

最近新整了个博客网站,同事在gitee上找的,还不错,gitee上的地址在这里:拾壹博客管理系统

别人的业务,再好也有不满足自己的地方,所以我就拉下来源码看了看,改了些bug,其中我觉得这个需求是有人需要用到的——每日新闻推送到微信群中。

效果图如下:

每天定时凌晨5.20推送。

why

在说功能之前先说说为什么要做这么件事儿,之前我是从比的微信群中将每日新闻复制到自己的群的,因为群需要互动互动,不能成为一个死群,所以我就每天手动发,偶尔有几次不发,就有群友问我,为啥不发了呢,他们觉的这个东西还挺好(虽然发了之后也没有人回复,大家可能只是在默默的观察关注吧)

于是后面我就每天都发,但是吧,手动发,有时候记得,有时候忘记,并且别的群不发的话,我就没地方找去,还得自己去网上找,所以就想着自己写一个吧。

思路

网上有专门的这种接口,用来拿到每日新闻简要

将新闻整理成一篇文章,发送到博客中

利用别的途径,将新闻标题(因为微信发文字会有字数限制),推送到群中(智能微秘书)

然后按照这个思路我们去实现。

代码实现

1.首先我们去天行数据,注册一个账号,然后找到每日新闻,申请改接口。

注册地址:天行数据,找到接口:

申请下来之后,去个人中心,看看自己的key是多少,我们在请求接口的时候需要拿着这个key去。

2. 在java中实现调用该接口,拿到数据发布到博客中。

关键代码如下:

 /**
     * 获取每日新闻,添加到文章里面
     * @param
     * @return
     */
    @Override
    public ResponseResult getDaysNews() {
        //调用每日简报的接口
        String body = HttpUtil
                .createGet(DAYS_NEWS_API + "?key=" + TIAN_KEY)
                .execute()
                .body();

        JSONObject jsonObjectResult = JSON.parseObject(body);
        Integer code = jsonObjectResult.getInteger("code");
        if(code!=200){
            log.error("请求每日新闻的接口出错,出错信息:"+body);
            return ResponseResult.error();
        }
        log.error("请求每日新闻的接口成功:"+body);
        JSONObject resultObject = jsonObjectResult.getJSONObject("result");
        //获取新闻列表
        JSONArray contentList = resultObject.getJSONArray("list");
        //获取文章的封面信息
        String strResult = restTemplate.getForObject(IMG_URL_API, String.class);
        JSONObject jsonObject = JSON.parseObject(strResult);
        Object imgUrl = jsonObject.get("imgurl");
        //将新闻列表封装成markdown文章
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日");
        String todayDate = simpleDateFormat.format(new Date());
        String titleContent = "# "+todayDate+"新闻简要<br/>";
        StringBuilder stringBuilder = new StringBuilder(titleContent);
        //发送到微信群里面的信息
        JSONObject contentObject = new JSONObject();
        contentObject.put("todayDate",todayDate);
        JSONArray array = new JSONArray();

        //遍历接口返回来的json数据
        contentList.forEach(item->{
            JSONObject arrayObject = new JSONObject();
            JSONObject itemObject = (JSONObject)item;
            stringBuilder.append("⏱️");
            stringBuilder.append(itemObject.getString("mtime"));
            stringBuilder.append("<br/>");
            stringBuilder.append("### ");
            stringBuilder.append("                        
(0)

相关推荐

  • Java 实战范例之线上新闻平台系统的实现

    一.项目简述 功能: 用户的登录注册,新闻的分类查询,评论留言,投稿,新闻的后台管理,发布,审核,投稿管理以及汇总统计等等. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持) 项目技术: Jsp + Jdbc + Servlert + html+ css + JavaScript + JQuery + Ajax + Fileupload 登录验证码代码生成: @C

  • 用PHP+java实现自动新闻滚动窗口

    show.php源代码: <? if ($action=="cp"){ echo"<div align=center>   <p>滚动菜单资料输入端</p>   <form method=post action=show.php?action=edit>     <p>文字一:        <input type=text name=t1 maxlength=30>       链接一:     

  • 新闻列表的分页查询java代码实现

    本文实例为大家分享了新闻列表分页查询的java代码,供大家参考,具体内容如下 package com.ibeifeng.test; //创建新闻测试类 public class newTest { private long id; private String title; private String content; private String author; public newTest() { super(); } public newTest(long id, String titl

  • java爬虫Gecco工具抓取新闻实例

    最近看到Gecoo爬虫工具,感觉比较简单好用,所有写个DEMO测试一下,抓取网站 http://zj.zjol.com.cn/home.html,主要抓取新闻的标题和发布时间做为抓取测试对象.抓取HTML节点通过像Jquery选择器一样选择节点,非常方便,Gecco代码主要利用注解实现来实现URL匹配,看起来比较简洁美观. 添加Maven依赖 <dependency> <groupId>com.geccocrawler</groupId> <artifactId&

  • Java实现将每日新闻添加到自己博客中

    目录 前言 why 思路 代码实现 前言 最近新整了个博客网站,同事在gitee上找的,还不错,gitee上的地址在这里:拾壹博客管理系统. 别人的业务,再好也有不满足自己的地方,所以我就拉下来源码看了看,改了些bug,其中我觉得这个需求是有人需要用到的——每日新闻推送到微信群中. 效果图如下: 每天定时凌晨5.20推送. why 在说功能之前先说说为什么要做这么件事儿,之前我是从比的微信群中将每日新闻复制到自己的群的,因为群需要互动互动,不能成为一个死群,所以我就每天手动发,偶尔有几次不发,就

  • Java 实战项目锤炼之朴素风格个人博客系统的实现流程

    一.项目简述 本系统功能包括: 基于vue + Springboo痼J后端分离项目个人博客系统,注册 登录,首页展示,喜爰图书展示,后台图书维护,个人文 章展示,后台文章上传等等. 二.项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX (Webstorm也 行)+ Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts都支 持). 项目技术: Springboot + Maven + Mybatis + Vue

  • JS一分钟在github+Jekyll的博客中添加访问量功能的实现

    目录 一分钟在github+Jekyll博客中添加访问量功能 一.Jekll是什么 1. Jekll是软件简介 二.不蒜子 1. 不蒜子简介: 2. 官网入口 3. 使用方法 4. 个性化 总结 一分钟在github+Jekyll博客中添加访问量功能 前言 不会还有小伙伴不知道,github+Jekll是可以搭建自己的个人博客吧??? 如果大家觉得csdn的blog不够高大上,或者私密性不好,不能抒发一些情感,那么可以搭一个github的博客,只需一小时即可,详见大佬的博文: 一小时搭建gith

  • 给图片在博客中添加滤镜效果

    配合同事文章的技巧,用自己的博客来测试一下.首先插入一张测试图片: 终极技巧之图片篇:为图片添加滤镜效果 纯文字博客看上去会显得很枯燥,适当的配图能够让页面更美观,也能更好地表达自己的思想.那么如何为图片添加一些Photoshop里面才有的特殊滤镜效果呢?一张张修改图片吗?太烦琐了,更何况很多时候我们是引用网络上的图片地址,并没有对原图片的修改权限.这里有一个简单的方法,可以修改图片在博客上的显示效果.一般的博客编辑页面都有"插入图片"功能,此外还有"源代码编辑"模

  • 圣诞节Merry Christmas给博客添加浪漫的下雪效果基于jquery实现

    一年一度的圣诞节又到了,首先祝大家好运一串串,健康一年年,平安到永远!在这个特殊的日子里,处处洋溢着节日的气氛,空中飘落的雪花更显得浪漫!今天就教大家如何在博客中添加纷纷扬扬的下雪效果.今天,你那里下雪了吗? 首先在页面引入 jQuery 库和 jQuery.snow.js(或者使用压缩版本 jQuery.snow.min.js): 复制代码 代码如下: <script src="jquery.js"></script> <script src="

  • java 在file的尾部添加数据的两种方法总结

    java 在file的尾部添加数据的两种方法总结 问题描述:   在文件的末尾追加内容 方法1:利用RandomAccessFile类  1.将randomAccessFile模式设置为rw  2将randomAccessFile移动(seek)到文件末尾  3追加数据  4关闭流 方法2:利用FileWriter类  1.将FileWriter构造方法第二个参数置为true.表示在尾部追加  2追加数据  3.关闭流 实现代码: package cn.com; import java.io.F

  • Java自定义协议报文封装 添加Crc32校验的实例

    刚做完的demo,直接进入主题了,开启两个线程,模拟Socket服务端和客户端通信,将数据封装为指定格式报文发送 代码: import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.InetAddress; import java.net.ServerSocket; import java.net.Socket; import java.net.Unkno

  • 基于go+vue实现的golang每日新闻数据浏览与检索平台(推荐)

    gonews是基于 go+vue 实现的golang每日新闻浏览与检索平台 项目地址: Github 线上Demo:GoNews 数据来源: GoCN每日新闻 项目截图 部署 获取新闻数据 git clone https://github.com/gocn/news /data/news 获取源码 go get -u github.com/mikemintang/gonews 解析数据 nohup gonews -d /data/news > /data/log/gonews.log 2>&a

  • Java String字符串内容实现添加双引号

    使用转义符 \ (反斜杠) String str1 = "我是\"中国\"工人"; String str2 = "\"我是中国工人\""; System.out.println(str1);//输出 我是"中国"工人 System.out.println(str2);//输出 "我是中国工人" 补充知识:Java-输出字符型变量时与""双引号拼接问题 我就废话不多说了

  • Java 给PDF签名时添加可信时间戳的方法

    一.程序运行环境 编译环境:IntelliJ IDEA 所需测试文件:PDF..pfx数字证书及密钥.PDF Jar包(Free Spire.PDF for Java).签名图片(.png格式) 可信时间戳服务器:URL地址 注:以下代码中的所有测试文件路径均为IDEA程序项目文件夹路径,如C:\Users\Administrator\IdeaProjects\Certificate_PDF\test.pdf,文件路径可自定义. 关于jar导入可参考如下2种方法: 1.手动导入:下载jar包到本

随机推荐