摘要:注明番外篇非微信官方正式接口不推薦使用騷年們慎用在微信開發(fā)中為了獲取用戶的信息公眾賬號的一些信息除了通過官方給出的接口外還可以通過非法手段通過模擬登陸進(jìn)行獲取數(shù)據(jù)或者是借助類庫下面示例通過模擬登陸獲取公眾賬號信息借助于類庫在做模擬登陸獲取數(shù)
注明:番外篇,非微信官方正式接口不推薦使用...........(騷年們,慎用);
在微信開發(fā)中,為了獲取用戶的信息,公眾賬號的一些信息,除了通過官方給出的接口外,還可以通過"非法手段"通過模擬登陸進(jìn)行獲取數(shù)據(jù)(PHPCURL,或者是借助snoopy類庫);下面示例通過模擬登陸獲取公眾賬號信息(借助于snoopy類庫),在做模擬登陸獲取數(shù)據(jù)之前,你需要了解一下http知識,一些抓包軟件(這里L(fēng)Z使用的是chrome的F12進(jìn)行分析...主要是不會用各種抓包工具),打開php的curl擴(kuò)展等.
1.通過模擬登陸 獲取 TOKEN(萬惡的TOKEN) 和 cookie
主要步驟 1. 下載snoopy,直接Google即可找到下載鏈接,頁面中引入snoopy,snoopy類使用方法請自行Google
2. 打開公眾平臺登陸頁面 進(jìn)行抓包分析!
可以看到,在登陸是微信將發(fā)送 username,pwd,imgcode,f 三個參數(shù)到 http://mp.weixin.qq.com/cgi-bin/login?lang=zh_CN URL上. username, pwd 即微信公眾賬號的登陸郵箱和密碼.imgcode 參數(shù)可以不用理會;pwd需要用MD5進(jìn)行加密
核心代碼如下:
$snoopy = new Snoopy(); $submit = "http://mp.weixin.qq.com/cgi-bin/login?lang=zh_CN"; $snoopy->referer = "http://mp.weixin.qq.com/"; $snoopy->rawheaders["Origin"] = "http://mp.weixin.qq.com"; $snoopy->rawheaders["Host"] = "mp.weixin.qq.com"; $snoopy->rawheaders["Pragma"] = "no-cache"; $post["username"] = $user; $post["pwd"] = md5($pwd); $post["imgcode"] = ""; $post["f"] = "json"; $snoopy->submit($submit,$post); //取出token $rs = json_decode($snoopy->results,true); preg_match("/token=(d+)/",$rs["redirect_url"],$token); //取得token[1]就是token值 $cookie = ""; foreach ($snoopy->headers as $key => $value) { $value = trim($value); if(strpos($value,"Set-Cookie: ") || strpos($value,"Set-Cookie: ") === 0){ $tmp = str_replace("Set-Cookie: ","",$value); $tmp = str_replace("Path=/","",$tmp); $cookie .= $tmp.";"; } } if(strlen($cookie) > 20){ $a["cookie"] = $cookie; $a["token"] = $token[1]; $this->cookie = $cookie; $this->token = $token[1]; $this->results = $a; return $a; //返回數(shù)組 }else{ return false; }
返回的數(shù)組$a 即 COOKIE 和 TOKEN;微信機(jī)制是TOKEN在7200S 之后自動過期.
修改 微信更新后 繼續(xù)使用http無法獲取到數(shù)據(jù) 需要采用http 443端口 需要使用snoopy 2.0版本 snoopy 1.*版本 win環(huán)境下不支持https協(xié)議..................
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/20718.html
摘要:通過配置規(guī)則和單位使用或來解決。其他關(guān)于我個人的一系列學(xué)習(xí)介紹及總結(jié)有興趣可以參閱自學(xué)筆記一安裝使用篇自學(xué)筆記二插件篇自學(xué)筆記二番外篇一自學(xué)筆記二番外篇二 利用PostCSS解決移動端REM適配問題 上一期有提到結(jié)合postcss-px2rem插件來處理移動端適配的方案,以及相關(guān)的避坑方法,之后總覺得這個解決方案問題太多,也就誕生了另一套方案運(yùn)用postcss-pxtorem插件來進(jìn)行...
摘要:在中怎么安裝編者的電腦為位,因此以為例向大家展示的安裝過程。第三步設(shè)置環(huán)境變量一般安裝完成后,都會進(jìn)行環(huán)境變量設(shè)置,目的是讓系統(tǒng)能夠找到和命令。生命不止,學(xué)習(xí)不休加油 他山之石,可以攻玉!歡迎關(guān)注我的微信公眾號showImg(https://segmentfault.com/img/bVboaBO?w=129&h=129); 本文作為構(gòu)建第一個Java程序的番外篇一,跟大家探討下在Wi...
摘要:前言這是電商系統(tǒng)設(shè)計系列在商品設(shè)計這塊的最后一篇文章。電商系統(tǒng)商品相關(guān)的文章已經(jīng)到了尾聲如果有其他商品相關(guān)的文章需要編寫可以私信聯(lián)系我畢竟我也是公司員工寫這些文章并不是我的工作,只是記錄我的職業(yè)生涯。 showImg(https://segmentfault.com/img/bVbePdh?w=1260&h=628); 前言 這是電商系統(tǒng)設(shè)計系列在商品設(shè)計這塊的最后一篇文章。以下是其他...
摘要:今日份重點(diǎn)命名規(guī)范注釋關(guān)鍵字關(guān)鍵字總結(jié)命名規(guī)范規(guī)范的包名名字管理是所有編程語言都必須重視的一個問題。比如說百度,其域名為,那么其對應(yīng)的應(yīng)用的包名前綴就應(yīng)該為。是誰這么大牌總結(jié)本文主要介紹了中的命名規(guī)范注解關(guān)鍵字關(guān)鍵字等內(nèi)容。 歡迎關(guān)注我的微信公眾號,共同打牢Java的基礎(chǔ),向著遠(yuǎn)方進(jìn)擊 showImg(https://segmentfault.com/img/bVboaBO?w=129...
摘要:編程之道出自美國一位資深的程序設(shè)計師之手。大師帶你開悟高薪程序員之路編程之道番外篇程序員見禪師我學(xué)了和水仙花數(shù),想自己開發(fā)個操作系統(tǒng),希望大師指點(diǎn)。斧子扔得再啊呀我操程序員去拜訪禪師每次遇到程序,我都心急如焚,特向大師求心靈平靜之道。 編程之道》出自美國一位資深的程序設(shè)計師 Geoffrey James 之手。 本文章是為番外篇,哈哈哈,有點(diǎn)兒無節(jié)操。 大師帶你開悟高薪程序員之路——《...
閱讀 1484·2021-11-24 10:20
閱讀 3709·2021-11-24 09:38
閱讀 2379·2021-09-27 13:37
閱讀 2289·2021-09-22 15:25
閱讀 2345·2021-09-01 18:33
閱讀 3587·2019-08-30 15:55
閱讀 1856·2019-08-30 15:54
閱讀 2174·2019-08-30 12:50