本帖最后由 hjx 于 2012-10-31 17:22 编辑
/**
*** 此处所用的天涯账号,用户名:adsdlfs 密码:hhh456
*** 问题:post登陆成功,但无法进行后续的相关操作,比如发帖,获取个人信息等,提示"用户未登陆"
*** 不知问题出在哪儿,希望各位老大批评指正
**/
import console;//打开控制台
import inet.whttp
whttp=inet.whttp()
whttp.beginRequest("http://passport.tianya.cn/login","POST","http://www.tianya.cn/bbs/")
whttp.writeHeader("Content-Type: application/x-www-form-urlencoded");
var post="fowardURL=&vwriter="+inet.url.encode("adsdlfs",true)+"&vpassword="+"hhh456"+"&rmflag=1&submit=+"
whttp.send(post)
var tabHtml={}
for(str,size in whttp.eachRead() ){
table.push(tabHtml,str ) ;
}
whttp.endRequest();
strhtml=table.tostring(tabHtml)
strhtml=string.fromto(strhtml)
//匹配uid,如果匹配成功,说明成功登陆
var pattern=//<@location.href="http://www.tianya.cn/@>(\d+)
var uid=..string.match( strhtml,pattern)
if(!uid){
console.log("登陆失败")
return ;
}
console.log("登陆成功,你的uid是",uid)
//获取个人主页,如果在源码中发现"我的帖子",则说明已经成功获取到个人信息
//问题是:上面的代码明明已经成功获取了uid,即成功登陆,为什么这里却获取不到相关的信息呢?
//此时如果post发帖的话,返回的信息也是提示"用户没有登陆"
var str=whttp.get("http://www.tianya.cn/"+uid,,"http://bbs.tianya.cn/")
str=..string.fromto(str)
console.log(string.find(str,"我的帖子"))
execute("pause") //按任意键继续
;//关闭控制台
|