利用httpclient 模擬登入,獲取登入後資訊資料
本例使用httpclient 3.0.jar
package test; import org.apache.commons.httpclient.Cookie; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.cookie.CookiePolicy; import org.apache.commons.httpclient.NameValuePair; import org.apache.commons.httpclient.methods.GetMethod; import org.apache.commons.httpclient.methods.PostMethod; /** * @author 作者 :chenzenan E-mail:
[email protected] * @version 建立時間:2012-8-10 下午04:35:48 Copyright ? 2012-8-10 Shanghai XXX Co. * Ltd. All right reserved. */ public class HttpClientLogin { public static void main(String[] args) { // 登陸 Url String loginUrl = "http://localhost/login.jsp"; // 需登陸後訪問的 Url String dataUrl = "http://localhost/applyopen/printApprize.jsp?iid=1516"; HttpClient httpClient = new HttpClient(); // 模擬登陸,按實際伺服器端要求選用 Post 或 Get 請求方式 PostMethod postMethod = new PostMethod(loginUrl); // 設定登陸時要求的資訊,使用者名稱和密碼 NameValuePair[] data = { new NameValuePair("name", "admin"), new NameValuePair("password", "123456") }; postMethod.setRequestBody(data); try { // 設定 HttpClient 接收 Cookie,用與瀏覽器一樣的策略 httpClient.getParams().setCookiePolicy( CookiePolicy.BROWSER_COMPATIBILITY); httpClient.executeMethod(postMethod); // 獲得登陸後的 Cookie Cookie[] cookies = httpClient.getState().getCookies(); StringBuffer tmpcookies = new StringBuffer(); for (Cookie c : cookies) { tmpcookies.append(c.toString() + ";"); } // 進行登陸後的操作1581,1602,1603,1610,1609,1608,1607,1606,1605,1620,1619,1617,1616,1622,1626,1642,1648,1647,1657 GetMethod getMethod = new GetMethod(dataUrl); // 每次訪問需授權的網址時需帶上前面的 cookie 作為通行證 getMethod.setRequestHeader("cookie", tmpcookies.toString()); // 你還可以通過 PostMethod/GetMethod 設定更多的請求後資料 // 例如,referer 從哪裡來的,UA 像搜尋引擎都會表名自己是誰,無良搜尋引擎除外 postMethod.setRequestHeader("Referer", "http://www.cc"); postMethod.setRequestHeader("User-Agent", "www Spot"); httpClient.executeMethod(getMethod); // 打印出返回資料,檢驗一下是否成功 String text = getMethod.getResponseBodyAsString(); System.out.println(text); } catch (Exception e) { e.printStackTrace(); } } }
相關推薦
利用httpclient 模擬登入,獲取登入後資訊資料
本例使用httpclient 3.0.jar package test; import org.apache.commons.httpclient.Cookie; import org.apache.commons.httpclient.HttpClient; impor
使用cookiejar模擬登入微博,獲取登入後的頁面資料
一、匯入模組 import urllib.request import http.cookiejar import urllib.parse import ssl ssl._create_default_https_context = ssl._crea
微信公眾平臺模擬登入,獲取賬號資訊
class wxOpenLogin{ private $cookie_file ="";//cookie臨時儲存檔案 private $username = ""; //微信賬號 private $pwd = "";<span style="white-space:pre">
用powershell登入網站,獲取登入後的response,再對response進行字串的擷取
開啟powershell powershell是windows系統自帶的,powershell的版本隨著win的版本升級而升級 如果你的系統不能執行第一條命令,可能是你的powershell的版本太低
批量ssh登入,獲取作業系統、CPU、記憶體、硬碟資訊<shell>
說明:該指令碼讀取machine.txt檔案中的機器名,然後批量ssh登入,獲取每臺機器的作業系統,CPU,記憶體,硬碟等資訊。 使用方法:將檔案儲存為sh,chmod +x filename 為該sh檔案賦予執行許可權。 for line in `cat machine.txt` do
Android請求獲取Java後端資料,登入介面例子
最近做了個Android請求獲取Java後端資料的例子,簡單實現了一下。先上個登入介面圖: 主要實現:java後端的程式碼 + Android的程式碼1、java後端(1)、先創個User類import net.sf.json.JSONObject; public cla
ionic3模擬token,實現登入攔截
1、在http服務裡面管理token相關資訊 注意:要在每個請求中新增token資訊(和後臺)public post(url: string, params: any = null, successCallback, errorCallback): any { //
ssm框架+前端ajax登入,解決登入後跳轉回原連結問題
當前環境: spring做全連結攔截,在攔截器中進行登入驗證,登入方法在前端觸發使用的是ajax,登入方式呼叫成功後,將在session中儲存登入的UUID,登入成功後的處理直接使用頁面跳轉到主頁(window.location.href)。 出現的變更:
呼叫圖片上傳http介面,利用httpClient模擬請求
上傳圖片除了上傳到本地伺服器之外,通常需要上傳到對方的伺服器中,這時候除了上傳到我們本地然後做NFS之外(比較不合理),還需要直接捅對方介面,直接將檔案上傳到對方伺服器,這時候就需要利用httpclient來模擬一個圖片上傳請求。 public static JSONOb
Android 微信授權登入、獲取Wx使用者資訊,解決無法回撥問題
微信授權登入,官方說的不是很清楚、所以導致有一部分的坑。 據此記載..(坑) 1.微信註冊應用平臺的應用簽名為 打包keystore的MD5 小寫並且去掉 ":" 號組成、或者去下載 微信簽名生成工具 輸入專案的packageName也可以檢視到。 2.授權沒反應,監測微信
C/S應用程式中進行HTTP登入,獲取相應的資料。
前段時間處理三星的一個裝置,用其的庫時,登陸時需要指定裝置型別,應用程式裡相關的資料裡也沒有儲存裝置的型別欄位,應用裡在我不知道這個裝置型號時,問廠家怎麼解決,回覆我說一個一個的裝置型別去連線吧! 很變態呀,幾個型別的裝置試下來時間很長。由於他的裝置支援HTT
網站退出登入,再次登入後,自動跳轉到退出登入的頁面 referrer
<script language="JavaScript"> var refer=document.referrer; document.getElementById('backurl').value=refer;</script> 也
vue 判斷是否登入,未登入跳轉到登入頁
網頁一進入判斷是否登入,未登入跳轉到登入頁面 router.js export default new Router({ routes: [ { path: '/', name: 'HelloWorld', component: HelloWorld,
【Android】【功能設計】儲存帳號密碼,自動登入,離線登入實現方案
勾選【記住密碼】【自動登入】複選框時: 什麼也不做,所有操作放在點選【登入】按鈕時執行 點選【登入】按鈕時: 為了簡化程式碼和實現邏輯,不管密碼對錯,登入資訊統一儲存到【上次登入帳號】【上次登入密碼】【是否儲存密碼】【是否自動登入】配置 登入成功
python 爬蟲 cookies設定,獲取登陸後介面。
前言 Cookie Cookie 是指某些網站伺服器為了辨別使用者身份和進行Session跟蹤,而儲存在使用者瀏覽器上的文字檔案,Cookie可以保持登入資訊到使用者下次與伺服器的會話。 Cookie原理 HTTP是無狀態的面向連線的協議, 為了保持連線狀態, 引入了
Linux伺服器ssh登入,檢視登入日誌
網路上的伺服器很容易受到攻擊,最慘的就是被人登入並拿到root許可權。有幾個簡單的防禦措施: 1. 修改ssh服務的預設埠。 ssh服務的預設埠是22,一般的惡意使用者也往往掃描或嘗試連線22埠。所以第一步就是修改這個預設埠 開啟/etc/ssh/sshd_config
微信登入,qq登入,微博登入之 tp3.2
微博開放平臺文件:http://open.weibo.com/wiki/Connect/login // QQ登入 public function qqLogin(){ $ qc = new Lo
手機驗證碼登入,賬號登入結合
HTML頁面: 【基於bootstrap前端框架】 頭部: <ul id="js-reset-tabs" class="nav tab-underline border-bottom"> <li
Android 實現qq第三方登入並獲取qq基本資訊
###②配置AndroidMainfest.xml <!-- 新增許可權 --> <uses-permission android:name="android.permission.INTERNET" /> <uses-perm
mysql DISTINCT選取多個欄位,獲取distinct後的行資訊
背景 : a表儲存關聯關係,通過ACode 獲取該關係中的所有 BCode, 並獲取所有Bcode-max(Bvrsn)的資訊 Bnm 表a 表b