1. 程式人生 > >requests模塊簡單學習(一)

requests模塊簡單學習(一)

get hub none ins bytes all 簡單 .json nic

requests模塊
安裝resquests模塊
py -2 -m pip install requests
py -3 -m pip install requests
get方法
get請求使用的是requests模塊已經封裝好的get方法,該方法的原型為:
get(url, params=None, kwargs) 發送一個get請求
參數說明:
url:請求的url
params:傳遞查詢的參數,可以是字典類型,也可以是bytes類型。
kwargs:可選請求參數
該方法返回一個reponse對象。
示例1:

import requests
response = requests.get("http://www.baidu.com")
print type(response)

示例2:

#coding=utf-8
import requests
import chardet
response  = requests.get("https://www.baidu.com")
print type(response)
print response.status_code#返回的狀態碼
print type(response.text)#響應信息的內容
print response.text.encode("utf-8")
print "***cokie: ",response.cookies
print "***content : ",response.content#響應信息的內容
print ""response.content.decode("utf-8")

Response響應信息的text 和content的區別:

text 返回的是unicode 型的數據,一般是在網頁的header中定義的編碼形式。
content返回的是bytes,二進制型的數據。
也就是說你如果想要提取文本就用text但是,如果你想要提取圖片、文件,就要用到content

requests發送無參的get請求


import requests
import json
response = requests.get("https://api.github.com")
#status_code響應狀態碼
print u"響應返回的狀態碼:

#response.json()響應信息,是一個字典
print type(response.json())

print response.json()["user_url"]

requests發送帶參的get請求

import requests
import json
payload = {"key1":"value1","key2":"value2"}
#params為get攜帶的參數
response = requests.get("http://httpbin.org/get",params=payload)
assert response.status_code == 200
#url為最後發送的url 
print response.url

requests發送帶參的get請求,攜帶超時時間

import requests
try:
    response = requests.get("http://www.baidu.com",timeout=0.01)
    print response.status_code
except Exception,e:
    print e

requests模塊簡單學習(一)