Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >百家号开发文档测试

百家号开发文档测试

作者头像
JQ实验室
发布于 2022-02-10 06:18:11
发布于 2022-02-10 06:18:11
65100
代码可运行
举报
文章被收录于专栏:实用技术实用技术
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import java.net.URI;
import java.util.Arrays;
import java.util.LinkedHashMap;
 
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.http.client.ClientHttpRequestFactory;
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
import org.springframework.web.client.RestTemplate;
import org.springframework.web.util.UriComponentsBuilder;


public class BaijiahaoSupport {

    public static QueryBjhResponse getArtList(String uriStr) {

        QueryBjhRequest request = new QueryBjhRequest();
        request.setApp_id("****");
        request.setApp_token("****");
        request.setCollection("publish");
        RestTemplate template = new RestTemplate();
        ClientHttpRequestFactory clientFactory = new HttpComponentsClientHttpRequestFactory();
        template.setRequestFactory(clientFactory);
        URI uri = UriComponentsBuilder.fromUriString(uriStr) //
                .build().encode().toUri();
        HttpHeaders requestHeaders = new HttpHeaders();
        requestHeaders.setAccept(Arrays.asList(MediaType.APPLICATION_JSON_UTF8));
        requestHeaders.setContentType(MediaType.APPLICATION_JSON_UTF8);
        @SuppressWarnings({ "rawtypes", "unchecked" })
        HttpEntity<QueryBjhRequest> requestEntity = new HttpEntity(request,requestHeaders);
        ResponseEntity<QueryBjhResponse> responseEntity = template.exchange(uri, HttpMethod.POST, requestEntity,
                QueryBjhResponse.class);
        QueryBjhResponse body = responseEntity.getBody();
        return body;
    }
    
    public static String withDrawArt(String uriStr,String id) {

        WdBjhRequest request = new WdBjhRequest();
        request.setApp_id("1614170592916180");
        request.setApp_token("f026f8a50b1bcbe2440fa7f2a691c96a");
        request.setArticle_id(id);
        RestTemplate template = new RestTemplate();
        ClientHttpRequestFactory clientFactory = new HttpComponentsClientHttpRequestFactory();
        template.setRequestFactory(clientFactory);
        URI uri = UriComponentsBuilder.fromUriString(uriStr) //
                .build().encode().toUri();
        HttpHeaders requestHeaders = new HttpHeaders();
        requestHeaders.setAccept(Arrays.asList(MediaType.APPLICATION_JSON_UTF8));
        requestHeaders.setContentType(MediaType.APPLICATION_JSON_UTF8);
        @SuppressWarnings({ "rawtypes", "unchecked" })
        HttpEntity<WdBjhRequest> requestEntity = new HttpEntity(request,requestHeaders);
        ResponseEntity<String> responseEntity = template.exchange(uri, HttpMethod.POST, requestEntity,
                String.class);
        String body = responseEntity.getBody();
        return body;
    }

    public static void main(String[] args) {
        runBjh();
    }

    private static void runBjh() {
        String list_url = "https://baijiahao.baidu.com/builderinner/open/resource/query/articleListall";
        String wd_url = "https://baijiahao.baidu.com/builderinner/open/resource/article/withdraw";
        QueryBjhResponse resp = getArtList(list_url);
        QueryBjhResponse.DataBean data = resp.getData();
        QueryBjhResponse.DataBean.PageBean page = data.getPage();
        if(page.getItems_count() > 0) {
            LinkedHashMap<String, ArticleBean> items = data.getItems();
            items.keySet().forEach(id->{
                withDrawArt(wd_url,id);
                try {
                    Thread.sleep(5000);
                } catch (InterruptedException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            });
        }
        if(page.isHas_next()) {
            runBjh();
        }
    }

}
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class QueryBjhRequest {
	private String app_token;// string 是 授权密钥
	private String app_id;// string 是 作者帐号ID
	private String collection;// string 否 文章状态集,不传默认查询所有支持的文章状态集
								// draft-草稿、publish-已发布、pre_publish-待发布、withdraw-已撤回、rejected-未通过
	public String getApp_token() {
		return app_token;
	}
	public void setApp_token(String app_token) {
		this.app_token = app_token;
	}
	public String getApp_id() {
		return app_id;
	}
	public void setApp_id(String app_id) {
		this.app_id = app_id;
	}

	public String getCollection() {
		return collection;
	}
	public void setCollection(String collection) {
		this.collection = collection;
	}
	
	/**
	 * 
	 	private String start_time;// string 否 支持按照年月日格式(2019-06-01)进行查询,仅支持查询到日维度的数据
	private String end_time;// string 否 支持按照年月日格式(2019-07-01)进行查询,仅支持查询到日维度的数据
	private int page_no;// int 否 查询页码,不传默认为1
	private int page_size;// int 否 查询条数,不能超过20,不传默认为20
	private String article_type;// string 否 文章类型,news-图文、gallery-图集、video-视频,不传默认查询所有支持的文章类型
	public String getStart_time() {
		return start_time;
	}
	public void setStart_time(String start_time) {
		this.start_time = start_time;
	}
	public String getEnd_time() {
		return end_time;
	}
	public void setEnd_time(String end_time) {
		this.end_time = end_time;
	}
	public int getPage_no() {
		return page_no;
	}
	public void setPage_no(int page_no) {
		this.page_no = page_no;
	}
	public int getPage_size() {
		return page_size;
	}
	public void setPage_size(int page_size) {
		this.page_size = page_size;
	}
	public String getArticle_type() {
		return article_type;
	}
	public void setArticle_type(String article_type) {
		this.article_type = article_type;
	} 
	 * */
}
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import java.util.LinkedHashMap;

public class QueryBjhResponse {

    /**
     * errno : 0 errmsg : 成功 data :
     * {"page":{"page_no":1,"page_size":2,"items_count":2,"has_next":true},"items":{"1111111111":{"article_id":"1111111111","app_id":"1111111111","nid":"11111111112","updated_at":1540886721,"type":"news","status":"analyze","collection":"pre_publish","title":"示例标题","article_url":"http://baijiahao.baidu.com/s?id=1111111111"},"22222222":{"article_id":"22222222","app_id":"22222222","nid":"222222223","updated_at":1540883519,"type":"news","status":"audit","collection":"pre_publish","title":"示例标题2","article_url":"http://baijiahao.baidu.com/s?id=22222222"}}}
     */

    private int errno;
    private String errmsg;
    private DataBean data;

    public int getErrno() {
        return errno;
    }

    public void setErrno(int errno) {
        this.errno = errno;
    }

    public String getErrmsg() {
        return errmsg;
    }

    public void setErrmsg(String errmsg) {
        this.errmsg = errmsg;
    }

    public DataBean getData() {
        return data;
    }

    public void setData(DataBean data) {
        this.data = data;
    }
    
    public static class DataBean {
        /**
         * page : {"page_no":1,"page_size":2,"items_count":2,"has_next":true} items :
         * {"1111111111":{"article_id":"1111111111","app_id":"1111111111","nid":"11111111112","updated_at":1540886721,"type":"news","status":"analyze","collection":"pre_publish","title":"示例标题","article_url":"http://baijiahao.baidu.com/s?id=1111111111"},"22222222":{"article_id":"22222222","app_id":"22222222","nid":"222222223","updated_at":1540883519,"type":"news","status":"audit","collection":"pre_publish","title":"示例标题2","article_url":"http://baijiahao.baidu.com/s?id=22222222"}}
         */

        private PageBean page;
        
        public DataBean() {
            super();
        }

        private LinkedHashMap<String, ArticleBean> items;

        public PageBean getPage() {
            return page;
        }

        public void setPage(PageBean page) {
            this.page = page;
        }

        public LinkedHashMap<String, ArticleBean> getItems() {
            return items;
        }

        public void setItems(LinkedHashMap<String, ArticleBean> items) {
            this.items = items;
        }
        
        public static class PageBean {
            /**
             * page_no : 1 page_size : 2 items_count : 2 has_next : true
             */

            private int page_no;
            public PageBean() {
                super();
            }

            private int page_size;
            private int items_count;
            private boolean has_next;

            public int getPage_no() {
                return page_no;
            }

            public void setPage_no(int page_no) {
                this.page_no = page_no;
            }

            public int getPage_size() {
                return page_size;
            }

            public void setPage_size(int page_size) {
                this.page_size = page_size;
            }

            public int getItems_count() {
                return items_count;
            }

            public void setItems_count(int items_count) {
                this.items_count = items_count;
            }

            public boolean isHas_next() {
                return has_next;
            }

            public void setHas_next(boolean has_next) {
                this.has_next = has_next;
            }
        }

        public static class ArticleBean {
            /**
             * article_id : 22222222 app_id : 22222222 nid : 222222223 updated_at :
             * 1540883519 type : news status : audit collection : pre_publish title : 示例标题2
             * article_url : http://baijiahao.baidu.com/s?id=22222222
             */

            private String article_id;
            public ArticleBean() {
            }

            private String app_id;
            private String nid;
            private int updated_at;
            private String type;
            private String status;
            private String collection;
            private String title;
            private String article_url;

            public String getArticle_id() {
                return article_id;
            }

            public void setArticle_id(String article_id) {
                this.article_id = article_id;
            }

            public String getApp_id() {
                return app_id;
            }

            public void setApp_id(String app_id) {
                this.app_id = app_id;
            }

            public String getNid() {
                return nid;
            }

            public void setNid(String nid) {
                this.nid = nid;
            }

            public int getUpdated_at() {
                return updated_at;
            }

            public void setUpdated_at(int updated_at) {
                this.updated_at = updated_at;
            }

            public String getType() {
                return type;
            }

            public void setType(String type) {
                this.type = type;
            }

            public String getStatus() {
                return status;
            }

            public void setStatus(String status) {
                this.status = status;
            }

            public String getCollection() {
                return collection;
            }

            public void setCollection(String collection) {
                this.collection = collection;
            }

            public String getTitle() {
                return title;
            }

            public void setTitle(String title) {
                this.title = title;
            }

            public String getArticle_url() {
                return article_url;
            }

            public void setArticle_url(String article_url) {
                this.article_url = article_url;
            }
        }


    }
}
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class WdBjhRequest {
    private String app_token;// string 是 授权密钥
    private String app_id;// string 是 作者帐号ID
    private String article_id;// string 否 文章状态集,不传默认查询所有支持的文章状态集
                                // draft-草稿、publish-已发布、pre_publish-待发布、withdraw-已撤回、rejected-未通过
    public String getApp_token() {
        return app_token;
    }
    public void setApp_token(String app_token) {
        this.app_token = app_token;
    }
    public String getApp_id() {
        return app_id;
    }
    public void setApp_id(String app_id) {
        this.app_id = app_id;
    }
    public String getArticle_id() {
        return article_id;
    }
    public void setArticle_id(String article_id) {
        this.article_id = article_id;
    }

}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-08-26 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
java 中 BigDecimal 详解「建议收藏」
首先,学习一个东西,我们都必须要带着问题去学,这边我分为 【为什么?】【是什么?】【怎么用?】
全栈程序员站长
2022/08/14
7960
java 中 BigDecimal 详解「建议收藏」
BigDecimal使用总结
对于超过16位的大型数字,需要用到Java在java.math包中提供的API类BigDecimal,而且也不是传统的+-*/,而是调用对应的方法。
向着百万年薪努力的小赵
2022/11/20
8810
BigDecimal使用总结
Java中BigDecimal用法详解
float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合。但是,商业计算往往要求结果精确,这时候BigDecimal就派上大用场啦。
挨踢小子部落阁
2023/03/16
9250
Java中BigDecimal用法详解
Kotlin BigDecimal 精确计算
完整工具类 /** * 加、减、乘、除 高精度计算工具类 * @author lyl 20190191 * */ object UtilsBigDecimal { // 需要精确至小数点后几位 const val DECIMAL_POINT_NUMBER:Int = 2 // 加法运算 @JvmStatic fun add(d1:Double,d2:Double):Double = BigDecimal(d1).add(BigDecimal(d2)).s
码脑
2019/04/11
4.8K0
BigDecimal的除法
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/147892.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/02
2K0
【java基础】BigDecimal 精度控制
如果舍弃部分 >= 0.5,则舍入行为与 ROUND_UP 相同;否则舍入行为与 ROUND_DOWN 相同。
爱笑的架构师
2020/09/24
7360
Java中的BigDecimal详解
今天碰到一个问题,金额计算用double类型会丢失经度,就改用了BigDecimal类型,这个类型之前用的比较少,没怎么接触。就到网上看了一下相关教程,写个总结记一下。
sunonzj
2022/06/21
6330
java 四舍五入保留小数的几种方式
(new BigDecimal()).setScale()方法用于格式化小数点,有多种小数保留模式,如下:
全栈程序员站长
2022/08/31
2.5K0
BigDecimal加减乘除计算
前阵子做题遇到了大数的精确计算,再次认识了bigdecimal 关于Bigdecimal意外的有许多小知识点和坑,这里特此整理一下为方便以后学习,希望能帮助到其他的萌新
全栈程序员站长
2022/07/23
2.4K0
BigDecimal加减乘除计算
BigDecimal 保留小数位/保留两位小数「建议收藏」
ROUND_CEILING Rounding mode to round towards positive infinity. 向正无穷方向舍入
全栈程序员站长
2022/09/29
3.5K0
【蓝桥杯Java_C组·从零开始卷】第五节(二)、BigDecimal的使用
RoundingMode是一个枚举类,有以下几个值:UP,DOWN,CEILING,FLOOR,HALF_UP,HALF_DOWN,HALF_EVEN,UNNECESSARY 
红目香薰
2022/11/29
1.2K0
【蓝桥杯Java_C组·从零开始卷】第五节(二)、BigDecimal的使用
Double转BigDecimal并保留两位小数出现异常: java.lang.ArithmeticException: Rounding necessary
Double 转 BigDecima l并保留两位小数出现异常: java.lang.ArithmeticException: Rounding necessary 。
全栈程序员站长
2022/08/31
8800
新手小白学JAVA 正则表达式 包装类 自动装箱/自动拆箱 BigDecimal
正确的字符串格式规则。 常用来判断用户输入的内容是否符合格式的要求,注意是严格区分大小写的。
全栈程序员站长
2022/08/15
3170
新手小白学JAVA 正则表达式 包装类 自动装箱/自动拆箱 BigDecimal
手把手教你进行 Java 的精确计算
作为 Java 程序员在日常的工作中,很多时候我们都会遇到一些需要进行数据计算的场景,通常对于不需要计算精度的场景我们都可以使用 Integer,Float 或者 Double 来进行计算,虽然会丢失精度但是偶尔也可以用,如果我们需要精确计算结果的时候,就会用到 java.math 包中提供的 BigDecimal 类来实现对应的功能了。
Java极客技术
2022/12/02
6060
手把手教你进行 Java 的精确计算
Java中的BigDecimal比较大于小于等于,四舍五入保留几位(setScale方法详解),加减乘除取余
本文主要讲解BigDecimal的比较运算,保留精度和取整和基础运算,BigDecimal与其他数据类型转换。
共饮一杯无
2022/11/28
2.2K0
Java中的BigDecimal比较大于小于等于,四舍五入保留几位(setScale方法详解),加减乘除取余
java保留两位小数
四舍五入   double   f   =   111231.5585;   BigDecimal   b   =   new   BigDecimal(f);   double   f1   =   b.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();   保留两位小数 ---------------------------------------------------------------
bear_fish
2018/09/19
6.5K0
BigDecimal 除法
divide(BigDecimal divisor, int scale, int roundingMode)
全栈程序员站长
2022/07/02
2.5K0
一文带你读懂 BigDecimal 源码
本章带来的是BigDecimal类的源码解读。BigDecimal类是 Java 在 java.math 包中提供的API类,用来对超过16位有效位的数进行精确的运算。除了复杂度设计和拓展性,里面的数学计算思维也很值得我们学习。对于用惯了float/double的同学,得好好仔细看看了。
后台技术汇
2022/05/28
6840
一文带你读懂 BigDecimal 源码
Java中的BigDecimal类和int和Integer总结「建议收藏」
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说Java中的BigDecimal类和int和Integer总结「建议收藏」,希望能够帮助大家进步!!!
Java架构师必看
2022/10/24
1.1K0
bigdecimal保留小数位数_如何保留两位小数
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/09/30
6.4K0
bigdecimal保留小数位数_如何保留两位小数
相关推荐
java 中 BigDecimal 详解「建议收藏」
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验