【记录给BlogsToWordpress添加新版百度空间的支持 】
新版百度空间,虽然是html5,外在清爽了,但是内在也还是有些问题的。
1.返回的评论数据中,是非法的json字符串,导致python中解析json有误,需要手动处理,给key加上对应的双引号括起来,才可以。
具体见:【已解决】Python中用json.loads去解析字符串出错:ValueError: Expecting property name: line 1 column 51 (char 51)
2.个别帖子:
http://hi.baidu.com/hispace/item/387cff8ebf4fa2edb17154aa
中包含的评论数据中,含有非法控制字符“\xBF\xB4\xBC\xFB\xC1\xCB”,导致无法解析。
然后发现,其实本身百度空间自己也都无法解析,所以没有显示帖子任何评论。
而实际上一共应该是96个评论的,其中第15个(index=14)出现问题导致无法解析的。
3.有些帖子竟然无标题。
比如:
http://hi.baidu.com/tmcsyy123/item/68233ec076948cbd0c0a7b18
http://hi.baidu.com/choklk/item/5ef51e23331d77966e2cc329
http://hi.baidu.com/hyzhhyzhhyzh/item/04847eda5cf7933ae2108fd9
后来发现原来都是听歌的帖子。
但是你丫又不是微博,竟然帖子没有标题,搞得还需要另外花很多精力,支持这些无标题的帖子。
【添加登陆模式和修改帖子的功能】
1. 最近在去给BlogsToWordpress添加新版百度的登陆模式和修改帖子的功能时,又发现,脚本无法使用了。
因为会找不到帖子标题,调试后发现,结果帖子的class从a-incontent a-title变为了a-incontent a-title cs-contentblock-hoverlink了。
这也才没几天啊,html内容改版的速度,马上赶上QQ了。。。。
【吐槽新版百度空间】
新版百度空间,是所谓的轻博客,好处是,用的是HTML5(可以从html源码标签看出),界面看起来清爽很多。
但是缺点了太多:
1.查看用户的资料等功能,没有了,很不方便。
2.把原先帖子的分类弄没了,取而代之的是变成标签了。
导致想要通过分类查看文章,变成了不可能时间。
因为点击看起来是分类的那个#XXX,实际会跳转到全百度的同一个tag对应的页面,所以当然无法找到自己博客的该分类的帖子了。
3.登陆自己的新版博客后,在“我的的主页”中,竟然找了半天也还没找到在哪里有按钮可以点击发布新帖子。。。。。
最后还是通过官网的介绍如何发布内容?,才知道如何发帖,原来是坑爹的,需要跑到“主页”中,点击“文字”,才可以发帖。。。
4.之前就遇到的那个问题,帖子的评论输入框中,不论是Ctrl+V还是右键粘贴,都无法粘贴内容,只能手动输入。
5.后来的后来,才发现,原来百度升级新版空间,导致了大多数人都很气愤,失去了原有的太多功能和原来的朋友等,但是却也无法升级到旧版空间。
而对于如此多的用户的需求,百度空间的贴吧里面,基本都爆棚了,但百度官网,也没有什么有效的回应。
对此,有人评论道,对于百度空间升级到新版的轻博客,根本不是为了赶时髦而升级的轻博客,而是为了变相逼用户离开百度空间,以此减轻百度的服务器的压力,以此来消减开支,使得百度可以把钱投入到其他更赚钱的领域。
无论如何结果都是:先的百度空间的用户,被狠狠滴坑了一把,却也无处诉苦。。。
【后记 20120808】
最近几天,发现旧版百度空间中,会提示你,让你尽快升级到新版,而旧版很快就要下线了。
然后看到后台设置中,可以提供博客内容打包下载服务,所以就去点击下载了,然后提示我说要等一会,让我5分钟后再过来看看有没有打包好,结果却是隔了很多分钟,回来看了好多次,还是没有打包完成,最后是过了几天,回来看,才打包完成:
同时,也看到对应提示:
“打包完成,请于48小时内下载数据”
和
“旧版下线后内容将不能再被访问,为了你与朋友们能够顺利分享精彩内容,建议你花点时间升级新版。 ”
可见,百度,是多么想强制性地,继续地,坑(那些不明真相的)爹的心,有多么急迫。。。
另外,去下载下来对应的打包好的博客内容,发现是一堆的的html文件。
入口是:
对应的博文列表是帖子,相册列表也是html网页,其中图片不是下载到本地的,都还是放在百度的图片服务器上的,地址都是类似这样的:
http://hiphotos.baidu.com/space/pic/item/d376833e388415ff838b1301.jpg
【后记 2012-08-20】
后来再次登陆百度旧版空间,会有提示说,将要在8月下旬,就停止旧版。
意思是说,不管你之前使用百度空间多少年了,不管你里面有多少数据,不管你多么讨厌新版,不想升级到新版,
全部都会在8月下旬强制升级到新版。
被逼无奈,我也就去升级一下。
但是升级过程中,又遇到很变态的事情:
我原先百度空间地址是:
http://hi.baidu.com/love_marriage_family/
新版升级时,使用原先的域名地址love_marriage_family,却无法使用,因为其限制5-14个字母:
然后改为love_marriage,却又提示“地址已被使用,请换一个”:
然后也试了其他有意义的地址,结果同上,要么是超过14个字母限制,要么又是重名无法用。
惹急了,写了个rinimabaidu,结果提示“您填写的域名是禁用词” :
呵呵,看来百度也知道自己做的烂,不让人家用这些敏感词啊。
总之,在这点上,百度不是一般的变态。
你之前使用的域名升级时,未必可以保留,因为很可能超过14个字母长度,或者是重名无法用。
而即使想要写个新的名字,却也很可能超过长度限制,或者又遇到重名无法用。
总结一下就是,对于百度空间,没有最变态,只有更变态。
问候一下那些产品经理的十八代祖宗。
因为像这样弱智的设计,不是脑残到一定程度,怎么能想的出的!!!
你就是再变态,也可以稍微改一下限制,比如长度不超过20个字母之类的啊,尼玛的!!!
【后记 2012-09-14】
1.用Firefox去登陆新版百度空间后,修改帖子,结果在保存的时候,提示我“非法登陆,请重新登陆”:
更加证明了,这套新版轻博客,不是一般的烂。
2.无奈重新登陆百度空间,再重新修改帖子,再点击保存,结果又提示“内容包含不合适内容,请检查后再发”:
3.不过后来的测试结果表明,之前已经成功发布的内容,只保留其中一部分,该部分中,也是保存非百度链接的,结果是可以发布的:
然后反推出来,上面无法发布,应该是帖子内容中包含了“百度”,“吐槽”之类的关键字了,所以才不允许发布的。
4.但是后来又接着去修改帖子,把内容改成和开始时候的一样的内容,结果却又可以发布了:
所以,真的搞不懂,到底新版百度的审核机制和内部工作原理了。。。
【删除新版百度空间帖子的内容】
后来打算通过脚本去modify post,实现将原先百度空间内的帖子的内容,都删除。
结果提交对应的POST操作后,返回的json是:
{"errorNo" : "506","errorMsg" : "非法操作,请重新登录","data": [ ]}
很明显,就是之前遇到的“非法操作,请重新登录”。
然后就是调试,折腾了半天,先后尝试过:
1。添加header:
headerDict = { 'x-requested-with' : "XMLHttpRequest", 'Referer' : "http://hi.baidu.com/pub/show/modifytext?qbid="+qbid, }
结果还是错误依旧。
2.尝试过换User Agent:
'constUserAgent' : 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C; .NET4.0E)', #'constUserAgent' : "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:15.0) Gecko/20100101 Firefox/15.0.1",
都还是没用
3.关于此问题,百度上也搜到很多其他人遇到此问题:
为什么我在新版百度空间操作时老是出现“非法操作,请重新登录”这样的提示?
但是也都没有解决办法。
最多的只是建议重新登陆试试,或者换个浏览器之类的,但是我此处问题是,脚本中出错此错误,
而IE9中在前面也出现过,但是重新登陆就好了,换个FireFox登陆,修改帖子也都是OK的。
所以还是不知道如何解决。
4.以为是我在iE9,Firefox的网页中登陆了,然后Python脚本中就不能再同时登陆了呢,结果去退出浏览器的登陆,然后Python脚本中也还是无法登陆。
5. 这人:
是换个时间就好了。
以及这个:
百度空间发布文章。。。。显示非法操作。。。。。请重新登录。。。这是是怎么了。。急求答案
所以,基本上可以确定,就是度娘抽风,或者系统有问题,所导致的。
所以,目前看来,只能换个时间再试试,还是不行的话,就再继续去调试。