从weixin.sogou.com找到的公众号文章,查看源码可以发现,文章的标题,内容,作者,微信号,封面图,都可以轻松获取;

但是唯独这个发布时间节点为空,代码如下

<em id="publish_time" class="rich_media_meta rich_media_meta_text"></em>

既然jsoup节点直接获取不到,那就在script脚本中获取吧;

文章的发布时间是在js中赋值的,另外一种思路是把所有的script脚本拿下来;再截取即可

js赋值的代码如下

function _typeof(e){
return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e;
}
!function(e){
if("object"===("undefined"==typeof module?"undefined":_typeof(module)))module.exports=e;else{
if(window.__second_open__)return;
var t="1575860164",n="1575539255",s="2019-12-05";
e(t,n,s,document.getElementById("publish_time"));
}
}(function(e,t,n,s){
var i="",o=86400,f=new Date(1e3*e),r=1*t,l=n||"";
f.setHours(0),f.setMinutes(0),f.setSeconds(0);
var c=f.getTime()/1e3;
f.setDate(1),f.setMonth(0);
var u=f.getTime()/1e3;
if(r>=c)i="今天";else if(r>=c-o)i="昨天";else if(r>=c-2*o)i="前天";else if(r>=c-3*o)i="3天前";else if(r>=c-4*o)i="4天前";else if(r>=c-5*o)i="5天前";else if(r>=c-6*o)i="6天前";else if(r>=c-14*o)i="1周前";else if(r>=u){
var d=l.split("-");
i="%s月%s日".replace("%s",parseInt(d[1],10)).replace("%s",parseInt(d[2],10));
}else i=l;
s&&(s.innerText=i,setTimeout(function(){
s.onclick=function(){
s.innerText=l;
};
},10));
});

可以看到 ",s=""后面就是我们需要的文章发布时间;

截取代码如下

/*** 从html 内容中获取文章发文时间** @param document html 文档对象 (该文章的所有html对象)* @return*/public static String getPublishTime(Document document) {Elements scripts = document.select("script");for (Element script : scripts) {String html = script.html();// 需要获取的节点if (html.contains("document.getElementById(\"publish_time\")")) {int fromIndex = html.indexOf("s=\"");// StrUtil 工具为 hutool.cn工具return StrUtil.subWithLength(html, fromIndex + 3, 10);}}return null;}

下边是文章其他内容的获取代码

/*** 从html 内容中获取公众号的标题** @param document html 文档对象* @return*/public static String getTitle(Document document) {Elements titles = document.getElementsByClass("rich_media_title");return StrUtil.trim(titles.get(0).text());}/*** 从html 内容中获取公众号的封面图** @param document html 文档对象* @return*/public static String getTitleImage(Document document) {Elements metas = document.getElementsByAttributeValue("property", "og:image");Element element = metas.get(0);if (element == null) {return "";}String content = element.attr("content");return StrUtil.trim(content);}/*** 从html 内容中获取文章的作者** @param document html 文档对象* @return*/public static String getWeChatName(Document document) {Element author = document.getElementById("js_name");Assert.notNull(author, "查找不到文章公众号,请输入合法的公众号文章连接");return StrUtil.trim(author.text());}/*** 从html 内容中获取文章公众号** @param document html 文档对象* @return*/public static String getWeChatAccount(Document document) {Elements metaValues = document.getElementsByClass("profile_meta_value");Assert.notEmpty(metaValues, "查找不到文章公众号,请输入合法的公众号文章连接");String text = metaValues.get(0).text();Assert.notBlank(text, "查找不到文章公众号,请输入合法的公众号文章连接");return StrUtil.trim(text);}

使用jsoup获取微信公众号文章发布时间相关推荐

  1. 如何获取微信公众号文章ID?9步教你!

    自媒体时代已经到来,越来越多的人开始关注和学习自媒体运营.而在自媒体运营中,微信公众号是一个非常重要的平台.为了更好地运营微信公众号,掌握文章ID获取方法是必不可少的技能之一.本文将从以下9个方面详细 ...

  2. 获取微信公众号文章封面图的技巧/网站

    直接使用访问:http://weixin.shareperform.com 以下主要是立项和事项的过程. 作为一个从Code转为营销策划的营销人,这周实力修一波操作. 一.需求 一个好的微信公众号推文 ...

  3. 快速获取微信公众号文章的技巧

    微信公众号是一个信息传播平台,许多人通过它获取信息.分享知识.但是,有时候我们会遇到需要保存公众号文章的情况.那么,如何获取微信公众号文章呢?本文将为您详细介绍. 一.使用搜狗微信搜索 搜狗微信搜索是 ...

  4. 获取微信公众号文章内视频真实地址

    PHP获取微信公众号文章内视频与音频真实地址 微信公众号的文章的爬取可以看到这个项目:github 基于QueryList的微信公众号文章获取工具 有任何问题可以留言. 返回数据: 包含音频和视频 包 ...

  5. 微信小程序获取微信公众号文章2

    微信小程序获取微信公众号文章2 前面介绍了一篇微信小程序打开微信公众号中的文章实战教程,主要介绍了实现的具体原理,但是实际去做的时候,发现了更多的坑,所以这里再补充一下. 原先的思路是不完整的 原先我 ...

  6. 第九部分 代理的使用(代理设置,代理池的搭建,用代理获取微信公众号文章)...

    网站采取的反爬虫措施有:弹出验证码,需要登录.检测某个IP在单位时间内的请求次数,超过规定的某个值,服务器拒绝服务,返回一些错误信息,这是封IP. 既然服务器封IP,可采用某种方式伪装IP,让服务器不 ...

  7. 如何获取微信公众号文章的阅读量和点赞数

    微信采集的重点就是微信公众号相关的数据.主要是发布的文章.其他的话还有点赞阅读以及公众号的账号信息等.下面会大家一一说明如何采集.以及采集的一些限制. 首先是数据来源.主要分为两大块.客户端采集和搜狗 ...

  8. 批量获取微信公众号文章里的图片

    有人在群里转了一本书电子版的公众号,想把里面的图片都下下来做成PDF文档 电商图片助手下载:http://www.pc6.com/softview/SoftView_584608.html 转载自:微 ...

  9. python爬取公众号文章发布时间

    使用xpath取出来的是空,爬取到本地的html,时间的标签如下,内容也是是空的 <em id="publish_time" class="rich_media_m ...

最新文章

  1. Q新闻丨MongoDB更换开源协议;Redis 5.0、Angular 7.0发布
  2. linux命令框显示中文乱码_CentOS终端命令行显示中文乱码的解决方法
  3. 【计算理论】图灵机 ( 非确定性图灵机 -> 确定性图灵机 | 模仿过程示例 | 算法的数学模型 )
  4. MySQL Proxy 安装与读写分离体验
  5. WebBrowser控件判断完全加载中DocumentCompleted和Navigated的关系
  6. asin c语言中 返回值范围_asin()_C语言asin()详解:反正弦函数,求反正弦值
  7. ARM 之五 发展史及各时期内核(ARM1 ~ ARM11 / Cortex)介绍
  8. android handler同步,android解决:使用多线程和Handler同步更新UI
  9. php mysql 平均分_平均评级计算mysql php
  10. 计算两个日期相差的天数,Calendar用法
  11. sobel,canny(可滑动调节阈值)边缘检测算法opencv-python实战
  12. 马尔科夫决策过程(MDP) : BlackJack (MC-Off Policy)
  13. 为了你的账户安全,此WeChat ID 不能登入Wechat网页版。你可以.......
  14. 自己制作一个html网页链接,怎么制作自己的网页链接,学生个人网页制作方法...
  15. 蓝牙耳机连接 win10音量异常
  16. 被Z世代称为B站张子枫,她有一种天然的治愈力。
  17. 2021年焊工(初级)考试及焊工(初级)考试内容
  18. A hybrid CNN-LSTM model for typhoon formation
  19. RGB的光的三原色、品红黄青颜料的三原色
  20. 获取安卓设备的有线网卡的MAC地址(安卓TV、安卓系统的广告机等)

热门文章

  1. 北京计算机科技大学l,北京科技大学数理学院-信息与计算科学系
  2. Elsevier期刊返修提交latex source files_Latex高亮文本时页码被影响问题
  3. 程序员的奋斗史(二十)——沉思录(一)——关于博客和思想
  4. 又一“刚需”经济崛起,“Artas们”能否成为秃头人群的心头好?
  5. PyQt5 Qss基本知识01
  6. 为什么软件开发周期总是预估的2~3倍
  7. 编程是什么 学习编程的好处
  8. 菜鸟PWN手进阶之堆基础
  9. The Complete Guide for Debugging a Stop 0x9F
  10. 多媒体文件的搜索技巧浅淡(转)