www.python123.org_python爬蟲-requests

Requests庫是目前常用且效率較高的爬取網頁的庫

1.一個簡單的例子

import requests #引入requests庫

r = requests.get("http://www.baidu.com")  #調用get方法獲取界面print(r.status_code)    #輸出狀態碼

print(r.text)    #輸出頁面信息

通過以下代碼,便可獲取一個response對象

2.通用代碼框架

importrequestsdefgetHtmlText(url):try:

r= requests.get(url, timeout = 30)    #設置響應時間和地址

r.raise_for_status()             #獲取狀態碼,如果不是200會引發HTTPERROR異常

r.encoding=r.apparent_encoding #apparent_encoding是識別網頁的編碼類型returnr.textexcept:return "產生異常"

if __name__ == "__main__":

url= ‘http://www.baidu.com‘

print(getHtmlText(url))

3.requests庫的具體介紹

3.1 response屬性介紹

屬性邏輯結構:

3.2requests方法介紹

requests庫對比http協議

????

ps:在這些方法中,大致有三個參數,略有差別

3.2.1 ?get方法

r = requests.get(‘http://www.baidu.com‘)print(r.text)

3.2.2head方法

r = requests.head(‘http://www.baidu.com‘)print(r.headers)

3.2.3 post方法

payload = {‘key1‘: ‘value1‘, ‘key2‘ : ‘value2‘}

r= requests.post(‘http://httpbin.org/post‘, data =payload)print(r.text)#輸出結果

{..."form": {"key1": "value1","key2": "value2"},

...}

3.2.4 put方法

payload = {‘key1‘:?‘value1‘,?‘key2‘?:?‘value2‘}

r= requests.put(‘http://httpbin.org/post‘, data =payload)print(r.text) #向URL傳一個字典,自動編碼為表單

#........字符串,........data#輸出結果

{..."form": {"key1": "value1","key2": "value2"},

...}

3.2.5 reuqest方法--構造請求

requests.request(method, url, **kwrags)#method:請求方式,對應get/put/post等七種#url : 鏈接#**kwrags : 13個控制訪問的參數

method請求方式:

requests.request(‘GET‘, url, **kwrags)

requests.request(‘HEAD‘, url, **kwrags)

requests.request(‘POST‘, url, **kwrags)

requests.request(‘PUT‘, url, **kwrags)

requests.request(‘PATCH‘, url, **kwrags)

requests.request(‘DELETE‘, url, **kwrags)

requests.request(‘OPTIONS‘, url, **kwrags)

**kwargs詳解:

kv = {‘key1‘: ‘value1‘, ‘key2‘ : ‘value2‘} #params

r= requests.request(‘POST‘, ‘http://python123.io/ws‘, data =kv)

data1= ‘hellowrld‘                #datar= requests.request(‘POST‘, ‘http://python123.io/ws‘, data = data1)

jso = {‘key1‘: ‘value1‘}             #json

r = requests.request(‘POST‘,‘http://python123.io/ws‘, json = jso)

hd = {‘key1‘: ‘value1‘}              #headers

r = requests.request(‘POST‘,‘http://python123.io/ws‘, headers = hd)

fs = {‘file‘ : open(‘data.xls‘,‘rb‘)}      #files

r = requests.request(‘POST‘,‘http://python123.io/ws‘, files =fs)#timeout

r = requests.request(‘POST‘,‘http://python123.io/ws‘, timeout = 10)#proxies

pxs = {‘http‘: ‘http://usr:pass@10.10.10:1234‘,‘https‘ : ‘https://10.10.10.1:4321‘}

r= requests.request(‘GET‘,‘http://www.baidu.com‘, proxies = pxs)

3.2.6 delete方法

3.2.7 patch方法

3.3PATCH和PUT的區別

.

4.requests庫的異常

本文是通過整合慕課網上的資料和網上相關資料完成

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

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

相關文章

Linux內核 crypto文件夾 密碼學知識學習

密碼算法分類 對稱算法非對稱算法消息摘要(單向哈希)算法這些算法作為加密函數框架的最底層,提供加密和解密的實際操作。這些函數可以在內核crypto文件夾下,相應的文件中找到。不過內核模塊不能直接調用這些函數,因為…

python隨機出100道加法題_自動出題隨機100題-20以內加減法全部算式

班 級:姓 名:12-819-411-1114-1018-111417-261215-113-417-819-1914-341516-31269619-161159312817-014-1414-1112-501414-017-616-111-012-211520-711113051019-1810619-691118-1220-519-818018114-1416-712-1015-1319-916-714-920-717-118-1611-815-416-1014-919-416-1413-…

Linux crypto相關知識的匯總 Linux加密框架crypto中的算法和算法模式(一)

Linux加密框架中的算法和算法模式 Linux加密框架中的算法和算法模式(一)_家有一希的博客-CSDN博客 加密框架支持的密碼算法主要是對稱密碼算法和哈希算法,暫時不支持非對稱密碼算法。除密碼算法外,加密框架還包括偽隨機數生成算法…

python3.5.2安裝pygame_【閑來無事,py寫game】Mac-Python3.5安裝pygame 1.9.2 小計

13正文之前沒錯,我就是這么不學無術,C實在學的雞兒疼,所以干脆搞點娛樂措施,昨天趕上了京東圖書做大活動,所以屯了一批書,好久沒碰python了。所以就整本玩玩!今天這不就上手了么!自己…

Linux crypto相關知識的匯總 Linux加密框架crypto對稱算法和哈希算法加密模式

參考鏈接 Linux加密框架中的算法和算法模式(二)_家有一希的博客-CSDN博客 對稱算法 分組算法模式 ECB模式 ECB模式下,明文數據被分為大小合適的分組,然后對每個分組獨立進行加密或解密如下圖所示如果兩個明文塊相同&#xff0c…

物化視圖和視圖的最大區別_基于catalyst的物化視圖改寫引擎的實現

更新日志:1. 2020/06/16 group by 視圖的部分描述錯誤,已修正。什么是物化視圖我先用我的話解釋一下什么是物化視圖。假設我們已經有A,B兩張表,現在我創建了一張表C,C是由A,B兩張表經過一條SQL處理得到的,這個時候我們…

Linux加密框架中的算法和算法模式

參考鏈接 Linux加密框架中的算法和算法模式(三)_家有一希的博客-CSDN博客 對稱算法 14 如上所示,在arc4.c中定義了兩個與RC4算法相關的算法實現,分別為arc4和ecb(arc4),其中arc4是RC算法的算法實現,而ecb…

python學籍管理系統 flask_taskday05-Python之flask學習 web開發最基本的需要(特別詳細且適用)...

1.首先一個Flask的Web項目的創建需求一(文章概述):一:必須實現命令工具管理App,用于在命令行輸入命令對項目進行管理,對后期多多益善二:必須實現“藍圖”管理,用于將app啟動函數與路由分開管理,…

Linux加密框架crypto AES代碼相關

例子 aes_generic.c - crypto/aes_generic.c - Linux source code (v5.15.11) - Bootlin static struct crypto_alg aes_alg {.cra_name "aes",.cra_driver_name "aes-generic",.cra_priority 100,.cra_flags CRYPTO_ALG_TYPE_CIPHER,.cra_blocks…

python語言print函數_Python 的 print 函數

Python 2.x 系列已經停止維護了, python 3.x 系列正在成為主流,盡管有些項目還是python2.x 的,之后寫Python 代碼為了保持兼容性,還是盡量和Python 3 標準保持一致作為一個Python newbee 而言, python 2.x 和 3.x 的 …

Linux加密框架crypto crypto_alg|cipher_alg數據結構|AES例子

加密框架將算法的屬性抽象為算法說明數據結構struct crypto_alg,加密框架中的每一個算法(基礎算法和衍生算法)都表示為一個算法說明數據結構的實例,因此將struct crypto_alg稱為通用算法說明數據結構。后續章節中如無特殊說明&…

python如何運用ols_使用OLS回歸(Python,StatsModels,Pandas)預測未來值

我目前正試圖在Python中實現一個MLR,我不知道如何去應用我發現的未來值的系數。使用OLS回歸(Python,StatsModels,Pandas)預測未來值import pandas as pdimport statsmodels.formula.api as smimport statsmodels.api as sm2TV [230.1, 44.5,…

Linux加密框架 crypto RC4

參考鏈接 arc4.h Linux加密框架中的主要數據結構(一)_家有一希的博客-CSDN博客 頭文件 arc4.h - include/crypto/arc4.h - Linux source code (v5.15.11) - Bootlin實現代碼 arc4.c arc4.c - crypto/arc4.c - Linux source code (v5.15.11) - Bootlin…

python讀txt轉array_python將txt文件讀入為np.array的方法

原文件:7.8094,1.0804,5.7632,0.012269,0.008994,-0.003469,-0.79279,-0.064686,0.11635,0.68827,5.7169,7.9329,0.010264,0.003557,-0.011691,-0.57559,-0.56121,原文件數據比較多,是一個125行,45類float數字。代碼:# -*- coding…

Linux加密框架 crypto 哈希算法說明 同步哈希shash_alg | 異步哈希 ahash_alg | 通用部分抽象 hash_alg_common

參考鏈接 Linux加密框架中的主要數據結構(二)_家有一希的博客-CSDN博客 定義 通用算法說明數據結構crypto_alg的聯合體成員變量cra_u中包含多種算法的個性化屬性,如分組算法、塊加密算法、壓縮算法、偽隨機數算法等,但不包含哈希…

python 列表間隔取值_python list數據等間隔抽取并新建list存儲的例子

原始數據如下:[e3cd, e547, e63d, 0ffd, e39b, e539, e5be, 0dd2, e3d6, e52e, e5f8, 0000, e404, e52b, e63d, 0312, e38b]將其分割為4路數據,分別存儲在fetal1、fetal2、mother1、ECG的列表中,各列表對齊,不能整除于4的數據舍去…

Linux加密框架 crypto 哈希算法舉例 MD5

參考鏈接 Linux加密框架 crypto 哈希算法說明 同步哈希shash_alg | 異步哈希 ahash_alg | 通用部分抽象 hash_alg_common_CHYabc123456hh的博客-CSDN博客Linux加密框架中的主要數據結構(二)_家有一希的博客-CSDN博客 MD5 md5.h - include/crypto/md5.h …

事務沒提交的數據查的出來嗎?_“金三銀四”面試官:說說事務的ACID,什么是臟讀、幻讀?...

一、事務事務是數據庫管理系統執行過程中的一個邏輯單位,由一個有限的數據庫操作序列構成。--摘自百科在MySQL里,事務是在引擎層面實現,比如MyIsam不支持,InnoDB支持面試清單(Java崗):JavaJVM數…

Linux加密框架 crypto 算法模板

參考鏈接 Linux加密框架中的主要數據結構(三)_家有一希的博客-CSDN博客algapi.h - include/crypto/algapi.h - Linux source code (v5.15.11) - Bootlin 定義 struct crypto_template {struct list_head list;struct hlist_head instances;struct modu…

python找最長的字符串_為Python找到最長重復字符串的有效方法(從Pearls編程)

我的解決方案是基于后綴數組。它是由最長公共前綴的兩倍前綴構成的。最壞情況下的復雜度是O(n(logn)^2)。任務”伊利亞特.mb.txt“在我的筆記本上花了4秒鐘。代碼在函數suffix_array和longest_common_substring中有很好的文檔記錄。后一個函數很短,可以很容易地修改…