我有一个公众号,具体名称就不说了,免得有广告嫌疑..
当前有这样的需求:
根据用户发送的文章序号,或者是一段话,智能查找一些相关的历史文章,返回给用户
于是出现一个问题,我的历史文章地址如何获取呢?
抛砖引玉吧,我这边试过一些方法:
那么这个方法存在的问题是:
1) 文章列表不全,不知道为什么,有的时候会漏掉一两篇文章,即使往后翻页也找不到
2) 最近搜狗对这个接口中的微信文章 url 做了加密,url 本来就是在微信平台中的 url,现在变成了搜狗自己跳转的 url,而这个 url 会做一些鉴权之类的,而且有时间限制,很快就过期了.
没仔细研究,但是觉得依赖它可能之后还会有问题,比如加密了的话,就会很被动.
但是这个方法也存在问题:
1) 只要在素材中有,就会获得,哪怕这个文章还没有群发过
2) 这个接口获得的地址,和实际群发的地址不一样.例如群发之后,会有用户的阅读数和赞,还有评论等信息,还会有原创标识.但是这个接口来获得的是一个原始素材的预览页面,信息与群发后的这些信息都不同步,大家可以在微信里面打开和查看这两个地址,看看区别:
素材接口:
http://mp.weixin.qq.com/s?__biz=MjM5MTIwNzg2OQ==&mid=208228982&idx=1&sn=44ca5cd06dfbd34b1d664673d2d025a2&scene=4#wechat_redirect
群发地址:
http://mp.weixin.qq.com/s?__biz=MjM5MTIwNzg2OQ==&mid=208236246&idx=1&sn=b7b025c51e02a82ac6af6b18b0b1486c&scene=4#wechat_redirect
据我所知,有一些网站,是能够获得微信公众号文章的,甚至连一些点赞数,阅读数都能获得,比如传送门网站,更新很实时,文章也很全(所以不会是从搜狗接口来的).但是我和作者联系了一下,他表示不能透露实现方式(我也确实能理解...)
所以,现在我还是想看看,是否能够自己来实现这套逻辑,研究了一阵,一直没有什么思路.不知道各位大神是否可以帮忙,提供一些可行性的方案?
十分感谢!!!
1
ToysMall 2015-09-28 12:43:47 +08:00 via iPhone
没那么复杂 微信本身有个历史消息页面 直接抓
|
2
oott123 2015-09-28 12:54:08 +08:00
|
3
qiayue 2015-09-28 13:26:47 +08:00
自己的号,良辰有 100 中方法去获取文章地址
别人的号,良辰就无能为力了 如你知道,告诉良辰,必有重谢 |
4
poisonbian OP @ToysMall 微信的历史消息页面,url 地址会变哦,这个我也试过.主要是里面有类似 token 验证的机制,过段时间就变了,除非再有一种方式,可以用来动态获得历史消息页面的地址
|
5
poisonbian OP @oott123 我文章里面已经说了,第一种方式就用的微信搜狗搜索,但是它也有缺陷
|
6
poisonbian OP @qiayue 别人的号,肯定也有方式的,传送门网站就是一个例子,也看过其他几个网站,实现了这样的功能;那如果是自己的号,除了我提到的两种方法,还有其他方案提供不,请不吝赐教~
|
7
airyland 2015-09-28 14:16:20 +08:00
@qiayue 自己的号,良辰有 100 中方法去获取文章地址 +1
我是这样实现, chrome 写个插件每天打开后台时自动爬群发功能的已发送页面。理论上用账号模拟登录也可以采集到,但这是比较自然的方式,并且顺便也备份了所有用户的消息(默认只保存 5 天)方便后面分析。 |
8
oott123 2015-09-28 15:23:09 +08:00 via Android
啊 看走眼了= =
搜狗的就够用了… |