日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Requests请求库

發(fā)布時間:2024/9/21 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Requests请求库 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Requests請求庫

import requests
# -*- coding:utf8 -*-
# -*- coding:utf8 -*-
# 工程路徑:3 requests請求庫使用.py
# 工程日期:8/6/2019
# 工程目標:
"""
requests 7個主要方法:
requests.request(): 構(gòu)造一個請求,支撐一下各方法的基礎(chǔ)方法
requests.get(): 獲取HTML網(wǎng)頁的主要方法,對應(yīng)HTTP的GET
requests.head(): 獲取HTML網(wǎng)頁頭的信息方法,對應(yīng)HTTP的HEAD
requests.post(): 向HTML網(wǎng)頁提交POST請求方法,對應(yīng)HTTP的POST
requests.put(): 向HTML網(wǎng)頁提交PUT請求的方法,對應(yīng)HTTP的RUT
requests.patch(): 向HTML網(wǎng)頁提交局部修改請求,對應(yīng)于HTTP的PATCH
requests.delete(): 向HTML頁面提交刪除請求,對應(yīng)HTTP的DELETE

13個參數(shù) requests.request(method,url,**kwargs)
method:請求方式,對應(yīng)get/put/post等7種
requests.method(url, **kwargs)
url:擬獲取頁面的url鏈接

**kwargs:控制訪問參數(shù),共13個,均為可選項:
params: 字典或字節(jié)序列,作為參數(shù)增加到url中
data: 字典,字節(jié)序列或文件對象,作為Request的內(nèi)容
json: JSON格式的數(shù)據(jù),作為Request的內(nèi)容
headers: 字典,HTTP定制頭(模擬瀏覽器進行訪問)
cookies: 字典或CpplieJar,Request中的cookie
auth: 元祖,支持HTTP認證功能
files: 字典類型,傳輸文件
timeout: 設(shè)定超時時間,秒為單位
proxies: 字典類型,設(shè)定訪問代理服務(wù)器,可以增加登陸認證
allow_redirects:True//False, 默認為True,重定向開關(guān)
stream:True/False,默認為True, 獲取內(nèi)容立即下載開關(guān)
verify:True/False,默認為True, 認證SSL證書開關(guān)
cert: 本地SSL證書路徑
"""
#%%
import requests
response = requests.get('http://www.baidu.com/')
print(type(response)) #查看response的類型
print(requests.status_codes) # 狀態(tài)碼
print(response.text) # 輸出響應(yīng)內(nèi)容
print(response.headers) # 返回響應(yīng)頭
print(requests.cookies)

#%% get 方法傳傳參 添加參數(shù),headers等
import requests
data = {
"s?tn" : "02003390_30_hao_pg",
'wd':'美女'
}
header = {}
response = requests.get('http://www.taobao.com/',params=data )
print(response.text)
print(response.url)
#%% 解析json
import requests
import json
response = requests.get('http://www.baidu.com/')
print(response.json())

#%% 獲取二進制流數(shù)據(jù)
import requests
response = requests.get('https://hbimg.huabanimg.com/6519f3b9d79be866403eb8d33ea5fa9ca5e3e5a2e40f6-Fzf6yq_fw658')
with open('tupian.jpg','wb') as f:
f.write(response.content)
f.close()

#%% 響應(yīng)屬性
import requests
response = requests.get('http://www.baidu.com')
print(response.content)
print(response.url)
print(response.headers)
print(response.text)
print(response.cookies)
print(response.encoding)
print(response.history)
print(response.next)

#%%狀態(tài)碼判斷
import requests
response = requests.get('http://www.baidu.com')
if response.status_code == requests.codes.ok:
print("ok")


#%% 取cookies
import requests
response = requests.get('http://www.baidu.com')
print(response.cookies)
for key, value in response.cookies.items():
print(key + '=' + value)


#%% 會話維持 session

#%% 證書驗證
# 大部分的網(wǎng)站為https網(wǎng)站, 需要證書驗證 非官方認證的證書網(wǎng)站會發(fā)生ssl報錯
# 為避免該類型的異常拋出,將證書的參數(shù)設(shè)置為false
import requests
# response = requests.get('https://www.12306.cn',verify = False)
response = requests.get('https://www.12306.cn')
print(response.status_code)
print(response.content)

#%% 代理設(shè)置
# 聲明字典類型的代理集,作為代理參數(shù)傳即可
import requests
proxies = {
'http':'http://127.0.0.1:1080'
#'https': 'https://127.0.1.7:1060'
}
response = requests.get('https://www.12306.cn',verify = False, proxies=proxies)
print(response.content)


#%% 異常處理
# requestsexception(ioerror)
# 父類異常為requestexception 繼承IOerror
# requests的異常也可以捕獲子類 connectionerror、urlrequerd、toomanyredirects、httperror
# connecttimeout、readtimeout、timeout、sslerror、proxyerror 異常
import requests
from requests.exceptions import ReadTimeout, HTTPError, RequestException
response = requests.get('http://www.baidu.com')
try:
response = requests.get('https://www.baidu.com', timeout=0.1)
print(response.status_code)
except ReadTimeout:
print("超時錯誤")
except ConnectionError:
print("連接錯誤")
except RequestException

轉(zhuǎn)載于:https://www.cnblogs.com/binyang/p/10995130.html

與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的Requests请求库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。