tianjyan / py-qzone-photo

Python2: 获取QQ空间相册
Apache License 2.0
45 stars 13 forks source link

几个月前还可以用,不知道为什么现在使用QQ空间服务器就返回如下内容 #1

Closed SteelZheng closed 7 years ago

SteelZheng commented 7 years ago

几个月前还可以用,不知道为什么现在使用只能获取到相册列表,但是请求单个相册时QQ空间服务器就返回如下内容: '_Callback( { "msg" : "对不起,您尚未登录或者登录超时。 错误码:(0A732-900)", "ret" : -900, "value" : -900 }

); 很显然不要是超时,相册也是开放的,不知道怎么回事

tianjyan commented 7 years ago

是这样的,qq空间对于一些请求的链接增加了认证的流程。目前情况下,albumbase2依然能不登录即可获取相关album,但是photobase1和photobase2都需要具体的认证信息才能获取数据源。

tianjyan commented 7 years ago

添加了登录相关的代码,参考Readme文件使用

SteelZheng commented 7 years ago

根据readme上操作了,大神你的机子应该是可以运行的。由于我这里是python3(把print语法改一下print()和urllib2.urlopen改成urllib.request.urlopen)并且用的是python3的qqlib库。取得的cookie不是字典,所以main.py文件13行中类似cookie['name']这样的取值,就有问题了。 这个是因为python3的qqlib返回的类型不一样吗? 我把cookie手写在第13行里面,可以完美运行下载相册照片: cookieStr = 'ptisp={0}; RK={1}; ptcz={2}; pt2gguin={3}; uin={4}; skey={5}'.format('for .qq.com','QP3fLShWHz for .qq.com','f3589b3b2643352a1e70ae9ef7b3f29e28999f6eb83bc621405e488d51025d4c for .qq.com','oQQ号码 for .qq.com','oQQ号码 for .qq.com','@QHU9mII0g for .qq.com') 我稍后写个解析取出关键数据吧,关键字就是[]里面的 (cookie['ptisp'],cookie['RK'],cookie['ptcz'],cookie['pt2gguin'],cookie['uin'],cookie['skey'])

下面是cookie的格式,估计跟大神你那边的返回值格式不一样。 <RequestsCookieJar[<Cookie ETK= for .ptlogin2.qq.com/>, <Cookie confirmuin=0 for .ptlogin2.qq.com/>, <Cookie pt_clientip=bc0f0a3696db8bc4 for .ptlogin2.qq.com/>, <Cookie pt_guid_sig=859625414882599e97 2c3e5381dca4f1acec8ddfd75f702ac5e758849920e56e for .ptlogin2.qq.com/>, <Cookie pt_local_token=-10224 82662 for .ptlogin2.qq.com/>, <Cookie pt_login_sig=iEWyqJ8y0clYnF9q79NyLBMQIbDn0YBadLYMpx4hKAU*SDYgv VlmCro35vsJx6RO for .ptlogin2.qq.com/>, <Cookie pt_serverip=35640abf0e8de807 for .ptlogin2.qq.com/>, <Cookie ptdrvs=SEOqJvOmy*px8iCV61t1PhlCUPLPMQ3c8SJS-YSJb3s_ for .ptlogin2.qq.com/>, <Cookie ptnick_ QQ号码=436172736f6e for .ptlogin2.qq.com/>, <Cookie ptvfsession=6c4215de4d6a350241fa1750ae6701fd 6680f247596764bd352bf4c4c62b8ecd8d0e01499c7ee249d2316159736fbfa6df27ba7ec3320497 for .ptlogin2.qq.co m/>, <Cookie superkey=LgZXFNPSEi-NzLlk8Oc7g*oa5EBtlmJlqlkuI-u1unA_ for .ptlogin2.qq.com/>, <Cookie s upertoken=1874134847 for .ptlogin2.qq.com/>, <Cookie superuin=oQQ号码 for .ptlogin2.qq.com/>, <C ookie u_QQ号码=@QHU9mII0g:1479649804:1479649804:436172736f6e:1 for .ptlogin2.qq.com/>, <Cookie u ikey=60b8e1236c798840134678e14f15f10fef026a2562e7674d72246d23bd6a6e91 for .ptlogin2.qq.com/>, <Cooki e RK=QP3fLShWHz for .qq.com/>, <Cookie pt2gguin=oQQ号码 for .qq.com/>, <Cookie ptcz=f3589b3b2643 352a1e70ae9ef7b3f29e28999f6eb83bc621405e488d51025d4c for .qq.com/>, <Cookie ptisp= for .qq.com/>, <C ookie skey=@QHU9mII0g for .qq.com/>, <Cookie uin=oQQ号码 for .qq.com/>, <Cookie p_skey=QYbKk9LtG d8OGsQGo1MX9rAvm3TnQYOgRH4J3*KiuAI_ for .qzone.qq.com/>, <Cookie p_uin=oQQ号码 for .qzone.qq.com />, <Cookie pt4_token=s3*3j0dBgngBPwa4NUCjGleJDtIBMe2BjELRaP2xtuc_ for .qzone.qq.com/>]>

tianjyan commented 7 years ago

@JadenTseng Hi,我重新整理了下代码,如果2.7下运行没有问题了,请关闭这个issue。并不打算维护一个3.x的版本,毕竟多数还是2.7,谢谢~

SteelZheng commented 7 years ago

感谢!