1. 程式人生 > >curl模擬登入新浪微博

curl模擬登入新浪微博

<?php header('Content-type:text/html;charset=utf-8'); $loginUrl = 'https://login.sina.com.cn/sso/login.php?client=ssologin.js (v1.4.15)&_=1403138799543'; $cookie_file1 = dirname(__FILE__).'/cookie/cookie1.txt'; $cookie_file2 = dirname(__FILE__).'/cookie/cookie2.txt'; $cookie_file3 = dirname(__FILE__).'/cookie/cookie3.txt';
$u = '此處通行證帳號'; $p = '此處通行證密碼'; $username = base64_encode($u); $password = $p; //登入新浪通行證 $loginData['entry'] = 'sso'; $loginData['gateway'] = '1'; $loginData['from'] = 'null'; $loginData['savestate'] = '30'; $loginData['useticket'] = '0'; $loginData['pagerefer'] = ''; $loginData['vsnf'] = '1'; $loginData
['su'] = base64_encode($u); $loginData['service'] = 'sso'; $loginData['sp'] = $password; $loginData['sr'] = '1920*1080'; $loginData['encoding'] = 'UTF-8'; $loginData['cdult'] = '3'; $loginData['domain'] = 'sina.com.cn'; $loginData['prelt'] = '0'; $loginData['returntype'] = 'TEXT'; $login = json_decode(loginPost($loginUrl
,$loginData),true); //獲取微博cookie $ch = curl_init(); curl_setopt($ch,CURLOPT_URL,$login['crossDomainUrlList'][0]); curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, 0 ); curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, 2 ); curl_setopt($ch,CURLOPT_HEADER,0); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch,CURLOPT_COOKIEFILE, $cookie_file1); curl_setopt($ch,CURLOPT_COOKIEJAR,$cookie_file2); $return = curl_exec($ch); curl_close($ch); //通過獲取的cookie 登入微博, 自動跳轉 $ch = curl_init(); curl_setopt($ch,CURLOPT_URL,"http://weibo.com/at/weibo?topnav=1&wvr=5"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch,CURLOPT_COOKIEFILE, $cookie_file2); curl_setopt($ch,CURLOPT_COOKIEJAR,$cookie_file3); curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, 1 ); $return = curl_exec($ch); //$info = curl_getinfo($ch); curl_close($ch); echo $return; function loginPost($url,$data){ global $cookie_file1 ; //echo $cookie_file ;exit; $ch = curl_init(); curl_setopt($ch,CURLOPT_URL,$url); curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch,CURLOPT_POST,1); curl_setopt($ch,CURLOPT_POSTFIELDS, http_build_query($data)); curl_setopt($ch,CURLOPT_COOKIEJAR,$cookie_file1); $return = curl_exec($ch); $info = curl_getinfo($ch); curl_close($ch); return $return; }

相關推薦

curl模擬登入

<?php header('Content-type:text/html;charset=utf-8'); $loginUrl = 'https://login.sina.com.cn/sso/login.php?client=ssologin.js (v1.4.15)&_=140313879

python模擬登入自動獲得呼叫api所需的code

其中client_id是我們的APP_KEY;redirect_url是我們的回撥頁面,就是我們一開始建立應用時設定的;regCallback具體我不知道是哪來的,但是其中有兩個變數,一個是APP_KEY,一個就是我們設定的回撥頁面;其它的表單內容都是固定的。請求程式碼如下:fields={ 'act

Java 模擬登入(Cookie)

最近需要對微博的資料進行一些收集, 首先從登入開始 1. 通過GET請求login public static String login(String username, String password) throws MalformedURLExcept

java 模擬登入(通過cookie)

java模擬登入新浪微博(通過cookie) 這幾天一直在研究新浪微博的爬蟲,發現爬取微博的資料首先要登入。本來打算是通過賬號和密碼模擬瀏覽器登入。但是現在微博的登入機制比較複雜。通過賬號密碼還沒有登入成功QAQ。所以就先記錄下,通過cookie直接訪問自

Python程式碼登入並自動發微

前言 對於很少玩微博@張行之_的我來說,微博內容少的可憐。所以本人就想:能不能寫個成功程式來幫我發微博。這個程式要滿足以下要求: 自動化,自動登入微博,自動發微博。 微博內容要有意義,不能是隨機生成的字元。 可以設定每隔一段時間發一條微博,頻率不能太快,當

Android授權登入獲取使用者個人資訊

記得第一次發博文的時候我寫了一篇文章,題為“”,裡面介紹瞭如何使用各官方提供的SDK來實現分享功能。那麼今天我們來講講如何通過新浪微博授權登入獲取使用者資訊,大家都知道,現在很多軟體除了本地註冊登入之外,還增加了第三方登入功能,最常見的是直接授權QQ等軟體來登入應用而無需

手把手教你selenium_第一個指令碼_登入

假定各位以前看過前兩篇文章,已經搭建好了環境,現在開始錄製回放第一個selenium的指令碼:登入新浪微博 基本的步驟是: 1.  開啟firefox,設定seleniumIDE選項,使之可以錄製下junit的程式碼; 2.  使用seleniumIDE進行錄製,

模擬登入分析(含驗證碼)

實驗室專案結題需要爬取新浪微博的內容做實驗,師兄提供了一份已實現的微博爬蟲系統。本身可以輕鬆愉快的完成語聊收集這一部分,然而自己的微博賬號始終登入失敗。究其原因,結果是登入時需要驗證碼。而系統對於需要驗證碼登入的賬號只能GG了,谷歌“新浪微博爬蟲”相關內容後,發現多數文章

java 使用htmlunit模擬登入爬取頁面

import java.io.IOException; import java.net.MalformedURLException; import com.gargoylesoftware.htmlunit.BrowserVersion; import com.gargoy

全程模擬登錄(2015)

star php utf 版本 get lag spa ckey phoenix 非常久之前就了解過模擬登錄的過程。近期對python用的比較多,想來練練手,就想實現

java——模擬用戶註冊

hashset nta 格式不正確 bject object ring tst null append 1.創建用戶類,重寫HashCode()和equals()方法: import java.util.*; public class User{ private

Android 第三方登入授權登入

Android第三方登入的優點有很多,這裡先簡單略過,後續再補充。先寫微博,其他的慢慢補充 新浪微博授權登入 新浪微博開放平臺 新浪微博Android SDK 主要流程如下: 這裡只是寫了一下程式的邏輯,前期的註冊申請工作可以參考官網,或者直接點這裡:新手指南 /**

第三方登入

填寫安全域名,本地測試的話可以改hosts檔案指向相應的域名  這裡也填上 (1)使用後端實現第三方登入 第二步:access_token獲取(注意方法是post,但form-data是空。否則就出現錯誤如下 {"error":"inval

不能登入今日頭條的解決辦法

自媒體盛行的今天,我也是頭條的忠實使用者,大概在2015年初的時候用新浪微博登入了今日頭條,自登入後就再也沒有退出過,中途繫結過手機號A,但是沒有設定登入密碼,今日手賤點了退出,再想登入時發現已經不能用新浪微博登入了,這可怎麼辦?真是急死我啊,賬號裡面可是積累了我這3年多的點

友盟第三方登入與分享到

介面都是使用官方提供的UI <1> 首先申請第三方賬號,大部分的平臺要進行登入和分享功能,都要在第三方平臺上建立應用並提交稽核,建立應用後,分享登入操作時顯示應用的icon,名稱和對應的開放平臺設定有關 <2>登入新浪微博開放平臺,進

iOS開發整合友盟,登入授權失敗,responseCode等於5051

        在專案中整合友盟第三方登入,新浪微博登入,登入授權失敗,返回狀態碼為5051(獲取賬戶失敗)。 原因:         App在測試階段(未上線),授權的微博賬號和開通開放平臺的微博賬號不是同一賬號。 解決辦法:         在新浪微博開放

關於開放平臺第三方登入介面問題

 我在做新浪微博授權登入時,遇到這麼一個問題手工輸入新浪的賬號密碼,可以跳到我的回撥頁獲取token,新浪使用者資訊。但是用他們的二維碼掃碼登入,token就獲取不到了,這是為什麼呢? 通過閱讀新浪微

騰訊QQ、第三方登入介面申請說明

這一段時間,公司一直要求在網站上加入第三方登入功能。昨天剛剛把介面申請的事項寫成文件提交上去。今天趁熱打鐵,整理一下。並分享給大家。 騰訊QQ第三方登入介面 開發者註冊 1. 在QQ互聯開放平

Java呼叫 API 介面發微(包含js元件、springMVC登入)詳解

參考自:http://www.myexception.cn/program/1930025.html 最近做了一個活動,要用到微博分享,就捉急忙慌的去研究,因為我們公司域名的問題還有專案的問題白白浪費我一天時間。。。 1、js微博元件分享 當然你再配置資訊的

qq登入登入 ,介面開發

給linux命令線上中文手冊加了,qq登入和新浪微博登入,認證用的是auth2.0,並且用了js api和php api相結合的方式來做的。個人覺得這種方式,兼顧安全和人性化。以前寫過一篇關於申請的部落格,請參考: 1,js api的優點,就是彈窗登入,不要跳來跳去,煩