DIYgod / RSSHub

🧡 Everything is RSSible
https://docs.rsshub.app
MIT License
32.94k stars 7.35k forks source link

微博不能获取到完整全文 #2498

Closed iplusx closed 5 years ago

iplusx commented 5 years ago

路由地址

/weibo/user/2332992900

预期是什么?

能获取到微博全文

341 #686

实际发生了什么?

不能显示全文,获取到的「description」只是微博列表页的正文。如下是其中一个「item」

【张家口万全区回应巨资拍水幕电影:成立调查组】6月24日,网曝河北张家口万全区,在“撤县改区”后花费4千... 【张家口万全区回应巨资拍水幕电影:成立调查组】6月24日,网曝河北张家口万全区,在“撤县改区”后花费4千万建水幕电影。24日晚,陈熙告诉记者,举报文章发出后“拖欠的款项立马就结清了”。昨日,万全区政府发布情况通报,称对网传“万全区水幕电影项目层层转包”一事展开了调查。权威人士表示,该区 ... Wed, 26 Jun 2019 04:30:20 GMT https://weibo.com/2332992900/HAFJYxMDB https://weibo.com/2332992900/HAFJYxMDB

问题分析

经查代码 lib/routers/weibo/user.js和lib/routers/weibo/utils.js,可以看出「description」部分只是取了微博列表的正文展示部分「item.mblog」,这部分的内容本来就是不全的。而utils干的事只是把正文最后的「全文」字眼删掉而已。 参见 #341

解决建议

现有的description截掉的全文部分有微博详情的链接: 全文 跳转该地址可以看到$render_data的text有完整的正文。所以应该是拿该text的内容去做weiboUtils.format

部署相关信息

正常部署

Env Value
OS
Node version
if Docker, version

额外信息(日志、报错等)

iplusx commented 5 years ago

相对url被搞了。。 现有的description截掉的全文部分有微博详情的链接:「/status/4387402628051791」 访问:https://m.weibo.cn/status/4387402628051791

var $render_data = [{ "status": { "created_at": "Wed Jun 26 12:02:42 +0800 2019", "id": "4387402628051791", "mid": "4387402628051791", "can_edit": false, "show_additional_indication": 0, "text": "【张家口万全区回应巨资拍水幕电影:成立调查组】6月24日,网曝河北张家口万全区,在“撤县改区”后花费4千万建水幕电影。24日晚,陈熙告诉记者,举报文章发出后“拖欠的款项立马就结清了”。昨日,万全区政府发布情况通报,称对网传“万全区水幕电影项目层层转包”一事展开了调查。权威人士表示,该区第一时间成立调查组,约武汉方面公司过来,包括审计、公安、区纪委、财政和发改委,对招投标程序和招标过程,对是不是层层转包,“我们已经开始做核查,如果真的存在违法违规问题,坚决严肃查处。”(据新京报/北京视频)<a data-url=\"http://t.cn/AipT9l8U\" href=\"https://www.miaopai.com/show/6ErAm9x7l4ySYwtfSn~9WJg1ikejW9JOfX6Jeg__.htm\" data-hide=\"\"><span class=\"surl-text\">时间视频的秒拍视频 <a data-url=\"http://t.cn/Aipn65mT\" href=\"http://hebei.sina.com.cn/news/yz/2019-06-26/detail-ihytcerk9392762.shtml\" data-hide=\"\"><span class=\"surl-text\">张家口万全区回应巨资拍水幕电影:成立调查组", "textLength": 525, "source": "搜狗高速浏览器", "favorited": false, "pic_ids": [], "pic_types": "", "is_paid": false, "mblog_vip_type": 0, "user": { "id": 2332992900, "screen_name": "新浪河北", "profile_image_url": "https://tva3.sinaimg.cn/crop.0.0.180.180.180/8b0ea584jw8etua00vlfkj2050050mxa.jpg", "profile_url": "https://m.weibo.cn/u/2332992900?uid=2332992900", "statuses_count": 45973, "verified": true, "verified_type": 3, "verified_type_ext": 0, "verified_reason": "新浪河北官方微博,新浪看点河北站官方微博", "close_blue_v": false, "description": "最全面、最快速的河北新闻资讯发布平台,网罗河北事,尽在新浪河北!http://hebei.sina.com.cn/", "gender": "m", "mbtype": 12, "urank": 48, "mbrank": 5, "follow_me": false, "following": false, "followers_count": 1213268, "follow_count": 3959, "cover_image_phone": "https://tva2.sinaimg.cn/crop.0.0.640.640.640/a1d3feabjw1ecasunmkncj20hs0hsq4j.jpg", "avatar_hd": "https://ww3.sinaimg.cn/orj480/8b0ea584jw8etua00vlfkj2050050mxa.jpg", "like": false, "like_me": false, "badge": { "enterprise": 1, "gongyi_level": 1, "dailv": 1, "dzwbqlx_2016": 1, "follow_whitelist_video": 1, "user_name_certificate": 1, "wenchuan_10th": 1, "qixi_2018": 1, "meilizhongguo_2018": 1, "national_day_2018": 1, "memorial_2018": 1, "denglong_2019": 1, "fu_2019": 1, "wusi_2019": 1 } }, "reposts_count": 17, "comments_count": 26, "attitudes_count": 44, "pending_approval_count": 0, "isLongText": true, "reward_exhibition_type": 0, "hide_flag": 0, "visible": { "type": 0, "list_id": 0 }, "darwin_tags": [], "mblogtype": 0, "more_info_type": 0, "content_auth": 0, "page_info": { "type": "video", "object_type": 11, "page_pic": { "width": 640, "url": "https://imgaliyuncdn.miaopai.com/images/6ErAm9x7l4ySYwtfSn~9WJg1ikejW9JOfX6Jeg___69iW_4.jpg", "height": 360 }, "page_url": "https://weibo.cn/sinaurl/blocked44181d37?u=http%3A%2F%2Fmiaopai.com%2Fshow%2F6ErAm9x7l4ySYwtfSn%7E9WJg1ikejW9JOfX6Jeg__.htm", "object_id": "2017607:4387156651646531", "page_title": "时间视频的秒拍视频", "title": "河北万全花四千万拍电影被曝层层转包 举报人称遭到人身威胁", "content1": "时间视频的秒拍视频", "content2": "河北万全花四千万拍电影被曝层层转包 举报人称遭到人身威胁 via@时间视频", "video_orientation": "horizontal", "play_count": "646万", "media_info": { "stream_url": "https://gslb.miaopai.com/stream/6ErAm9x7l4ySYwtfSn~9WJg1ikejW9JOfX6Jeg__.mp4?yx=&refer=weibo_app&vend=weibo&label=mp4_ld&mpflag=16&Expires=1561546361&ssig=PsXEuPjMr8&KID=unistore,video", "stream_url_hd": "https://gslb.miaopai.com/stream/6ErAm9x7l4ySYwtfSn~9WJg1ikejW9JOfX6Jeg__.mp4?yx=&refer=weibo_app&vend=weibo&label=mp4_hd&mpflag=8&Expires=1561546361&ssig=PsXEuPjMr8&KID=unistore,video", "duration": 95 }, "urls": null, "video_details": { "size": 12791237, "bitrate": 1066, "label": "mp4_720p" } }, "bid": "HAFJYxMDB", "buttons": [ { "type": "follow", "name": "关注", "sub_type": 0, "params": { "uid": 2332992900 } } ], "status_title": "张家口万全区回应巨资拍水幕电影:成立调查组", "ok": 1, "scheme": "https://weibo.cn/appurl?scheme=sinaweibo%3A%2F%2Fdetail%3Fmblogid%3D4387402628051791%26luicode%3D20000061%26lfid%3D4387402628051791&luicode=20000061&lfid=4387402628051791", "tipScheme": "https://weibo.cn/appurl?scheme=sinaweibo%3A%2F%2Fdetail%3Fmblogid%3D4387402628051791%26luicode%3D20000061%26lfid%3D4387402628051791&luicode=20000061&lfid=4387402628051791" }, "hotScheme": "https://m.weibo.cn/p/index?containerid=102803&luicode=20000061&lfid=4387402628051791", "appScheme": "https://m.weibo.cn?luicode=20000061&lfid=4387402628051791", "callUinversalLink": false, "callWeibo": false, "hit": true, "is_gray": 1, "schemeOrigin": false, "appLink": "sinaweibo://detail?mblogid=4387402628051791&luicode=20000061&lfid=4387402628051791", "xianzhi_scheme": "xianzhi://mblogshow?mid=4387402628051791", "third_scheme": "sinaweibo://detail?mblogid=4387402628051791&luicode=20000061&lfid=4387402628051791" }][0] || {};