python調用api應用接口_Python接口測試之urllib2庫應用

6dea895e5349836158b14d74a8910cf8.png

在接口測試中或者說在網絡爬蟲中,urllib2庫是必須要掌握的一個庫,當然還有優秀的requests庫,今天重點來說urllib2庫在接口測試中的應用。urllib2定義了很多的函數和類,這些函數和類能夠幫助我們在復雜情況下獲取URLS的內容。這些情況包含了對headers的添加,cookie的處理,代理,超時,鑒權等的處理。如果想詳細的了解urllib2庫,建議到官方查看,官方地址:https://docs.python.org/2/library/urllib2.html。查看urllib2庫的詳細的幫助文檔,見執行的代碼:

#!/usr/bin/env python

#-*-coding:utf-8-*-

import urllib2

print type(help(urllib2))

首先我們來看一個完整的請求和響應內容,然后通過urllib2的庫來實現這樣的一個過程,我們訪問http://m.cyw.com/切換城市,見抓取的信息,見截圖:

dd30873ecec5cdf7b3a2ef3aa42ce44e.png

見客戶端發送請求后,服務端響應回復的內容截圖:

fd6dea05c999775687c2d2cddf803552.png

在如上的截圖中,我們知道了請求的URL,方法以及請求的參數,下來我們使用urllib2的庫來實現一個完整的請求過程和響應內容,見實現的代碼:

63c0579e7cf402d89eb5e52a990122fd.png

調用如上的函數后,見執行的結果:

http的狀態碼: 200

響應內容: {"status":true,"homeUrl":"/xian"}

在接口的測試中,客戶端向服務端發起請求的時候,需要添加header這樣服務端,否則服務端會拒絕客戶端的請求,那么在urllib2庫中,如何添加header了,見如下的案例代碼:

5fa6182390b1b2e465f8c9fffeec2044.png

發送一個request的請求,然后請求資源,在該實例中,如果沒有headers,發送請求,會顯示404的錯誤信息,見不帶header發送請求后服務端的響應內容:

d2cbc783328aaa6793bb8b2157312d05.png

見執行函數后的錯誤信息,顯示為:

File "C:Python27lib甥汲楬b2.py

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/276785.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/276785.shtml
英文地址,請注明出處:http://en.pswp.cn/news/276785.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

破解MS Word 的只讀密碼限制

如果你有Microsoft Office XP 或者 Microsoft Office 2003,你可以使用Microsoft Script Editor 來查看(使用AltShiftF11 快捷鍵切換)被限制的Word 文檔的HTML-Code。當Word 文檔在Microsoft Script Editor打開后,搜索關…

CSS3透明背景表單

在線演示 本地下載

r-studio掃描后各種顏色_iPhone手機備忘錄,原來還隱藏著掃描儀,你不會還不知道吧?...

大家好,今天就來給大家講一講,iPhone手機備忘錄里面的一個隱藏功能,大家對手機備忘錄應該都不陌生吧,iPhone手機的備忘錄里有一個掃描儀的功能,可以將紙質文檔變成電子檔,不知道的小伙伴就和我一起來看看吧…

今早新聞的翻譯

踏切で人身事故 東上線亂れ4萬人に影響  15日午前7時20分ごろ、東京都板橋區常盤臺3丁目の東武東上線ときわ臺―上板橋間の踏切で遮斷機の下をくぐった女性が成増発池袋行き普通電車にはねられ…

MySQL保留2位小數

1、round(x,d),四舍五入。round(x) ,其實就是round(x,0),也就是默認d為0 select round(110.35,1); # 110.4 2、TRUNCATE(x,d),直接截取需要保留的小數位 select TRUNCATE(110.35,1); # 110.3 3、FORMAT(x,d),四舍五入…

TiDB 在小米的應用實踐

作者:張良,小米 DBA 負責人;潘友飛,小米 DBA;王必文,小米開發工程師。一、應用場景介紹 MIUI 是小米公司旗下基于 Android 系統深度優化、定制、開發的第三方手機操作系統,也是小米的第一個產品…

java圖片識別查看器模擬_[轉載]windows照片查看器無法顯示圖片內存不足

問題描述最近在使用Windows照片查看器打開一個jpg文件的時候異常Windows照片查看器無法顯示此圖片,因為計算機上的可用內存可能不足。請關閉一些目前沒有使用的程序或者釋放部分硬盤空間(如果硬盤幾乎已滿),然后重試問題分析這時我們按F11或者圖片下方中…

等寬字體

摘抄了一個編程用字體選擇標準,供各位參考: 1. 所有字符等寬; 2. 簡潔、清晰、規范的字符形體; 3. 支持ASCII碼為128以上的擴展字符集; 4. 空白字符(ASCII: 0x20)與其他字符等寬; 5. 1、l和i等三個字符易于…

海量數據索引與近似最近鄰隨記

最近鄰問題(NN) 將次數看成向量,然后我們就可以比對向量的距離(歐式距離,余弦距離)。數據中會有一些異常點,這些異常點會導致結果的不穩定。這種思想非常的不穩定,因為他只基于一個樣本來做最后類別的判定。K最近鄰算法(NN > K…

MySQL時間格式TIMESTAMP和DATETIME的區別

時區,timestamp會跟隨設置的時區變化而變化,而datetime保存的是絕對值不會變化 自動更新,insert、update數據時,可以設置timestamp列自動以當前時間(CURRENT_TIMESTAMP)填充/更新 占用存儲空間不同,timestamp儲存占用…

python c 選擇_C和Python,小白應該選擇學習哪門語言?

首先,需要對兩門語言進行初步認識,C語言是一門通用性的編程原因,為什么說通用呢?是因為它能夠做很多低級、底層的處理,同時具有良好的跨平臺性,C語言可以按照一定的標準在多種計算機平臺上進行編譯,包含嵌…

WaitForSingleObject的用法

WaitForSingleObject的用法 1.WaitForSingleObject 的用法 DWORD WaitForSingleObject(HANDLE hHandle, DWORD dwMilliseconds ); 參數 hHandle 是一個事件的句柄,第二個參數 dwMilliseconds 是時間間隔。如果時間是有信…

pom.xml里發布和下載包

1.下載包 在<project>標簽中 <repositories><repository><id>nexus</id><url>http://10.39.93.105:8081/repository/maven-public/</url><releases><enabled>true</enabled></releases><snapshots>&l…

智能云改-docker云遷移實戰

本次安裝的linux版本是centos7.4&#xff0c;docker安裝不依賴任何環境&#xff0c;但是必須要連接網絡&#xff0c;滿足這一點就可以進行docker安裝了。 一、安裝&#xff1a; 1.刪除就版本的docker輸入命令&#xff1a;yum -y remove docker \docker-common \docker-selinux …

python詞頻統計代碼_python統計詞頻

一、程序分析 &#xff08;1&#xff09;將文件讀入緩沖區&#xff08;dst指文本文件存放路徑&#xff0c;設置成形參&#xff0c;也可以不設&#xff0c;具體到函數里設置&#xff09; def process_file(dst): # 讀文件到緩沖區try: # 打開文件 txtopen(dst,"r") ex…

關于wpf,datagrid,雙向數據綁定用法解決方案

參考&#xff1a;http://www.myexception.cn/c-sharp/1446457.html 核心內容&#xff0c;在綁定數據的地方添加雙向綁定&#xff1a; {Binding BB, ModeTwoWay,UpdateSourceTriggerPropertyChanged} 轉載于:https://www.cnblogs.com/Mindy-hym/p/11431069.html

部署zookeeper分布式節點

用2臺服務器&#xff0c;低資源&#xff0c;部署3個zookeeper分布式節點&#xff1a; 1.準備環境系統已經配置好了JAVA環境&#xff1b;下載某個版本的zookeeper壓縮包&#xff0c;下載鏈接&#xff1a;http://apache.claz.org/zookeeper/zookeeper-3.5.3-beta/zookeeper-3.5.3…

Oracle的resouce、unlimited tablespace 及如何把數據導入不同的表空間

resouce是角色&#xff0c;unlimited tablespace是權限。 很多人在進行數據遷移時&#xff0c;希望把數據導入不同于原系統的表空間&#xff0c;在導入之后卻往往發現&#xff0c;數據被導入了原表空間。本例舉例說明解決這個問題:1.如果缺省的用戶具有DBA權限那么導入時會按照…

MySQL導入導出遠程訪問命令

1.導出整個數據庫mysqldump -u 用戶名 -p 數據庫名 > 導出的文件名mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql2.導出一個表mysqldump -u 用戶名 -p 數據庫名 表名> 導出的文件名mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql3.導出一個數據庫結…

.net開發是做什么的_軟件開發是什么, 該怎么做?

軟件開發是什么, 該怎么做&#xff1f;1 引子關于什么是軟件開發存在很多觀點&#xff0c;有的認為軟件開發即服務&#xff0c;有的認為軟件開發即產品&#xff0c;有的認為軟件開發即平臺&#xff0c;這些觀點各有各的側重點。這篇文章我們來學習和探討一下軟件開發。2 軟件…