中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中 requests庫模塊安裝發送請求和獲取網頁的字符串

發布時間:2020-07-23 14:28:04 來源:網絡 閱讀:787 作者:nineteens 欄目:編程語言

  requests基本介紹

  為什么要學習requests,而不是urllib?

  1.requests的底層實現就是urllib

  2.requests在python2 和python3中通用,方法完全一樣

  3.requests簡單易用

  4.requests能夠自動幫助我們解壓(gzip壓縮等的)網頁內容

  requests的作用

  發送網絡請求,獲取響應數據

  中文文檔API:https://2.python-requests.org//zh_CN/latest/user/install.html

  網址最好在Chrome瀏覽器打開,如果是英文,還可以右擊翻譯成中文

  requests的安裝使用

  發送請求

  首先導入requests模塊,這是一個第三方模塊,需要安裝,pip install時需注意是Python2的pip還是Python3的pip,在終端通過pip --version查看版本,pip后面有一個空格。如果pip --version出來的結果是Python2.7,安裝時需要pip3 --安裝包,否則就是安裝在Python2的環境里,以后在pycharm中很可能有些模塊用不了。

  安裝requests包時提示先升級pip,直接升級權限不夠,在終端中用sudo -s直接切換到管理員身份,再輸入命令pip install --upgrade pip即可成功升級pip,然后再pip install requests,ctrl+d退出管理員權限。

  發送get請求

  requests.get(“url地址”),方法可以獲取一個URL地址,獲取的內容放在變量r中,r作為一個response對象。

  r = requests.get(“url地址”)

  發送post請求

  r = requests.post(“url地址”)

  請求的URL地址中必須有http協議,否則就會報錯

  獲取URL的HTML

  r = requests.get(“http://www.baidu.com”)

  r此時是一個response對象

  如何區分屬性和方法

  根據詞性區分,名詞是屬性,后面沒有括號,動詞是方法,后面有括號

  自己定義類時,類屬性、實例屬性都應該定義成名詞;定義方法時盡量用動詞。

  r的text屬性,名詞,后面沒括號

  在ipython3交互模式下,import requests后,r = requests.get(“http://www.baidu.com”),r.text,返回的結果里有亂碼,因為編碼方式和解碼方式不一致。

  encoding屬性?無錫婦科醫院 http://www.bhnnk120.com/

  r.encoding,根據HTML頭部推斷編碼方式,返回編碼方式,是requests模塊推測出來的。但是推測出來的一般是錯誤的

  此時需要指定解碼方式,r.encoding = “utf-8”,然后再r.text即可返回沒有亂碼的內容

  content屬性

  r.content 返回的內容是一個b開頭的bytes類型數據,需要轉換成字符串類型

  r.content.decode(),此時返回的結果就是有中文的

  decode()方法

  默認使用utf-8的方法解碼,優先使用

  r.content.decode(),此時返回的結果就是有中文的

  解碼方式優先順序

  r.content.decode() --默認用utf-8解碼

  r.content.decode(“gbk”) --用gbk解碼

  r.text --requests模塊猜的解碼方式

  response.text和response.content的區別

  requests保存網頁圖片到本地

  pycharm中或者vim中

  新建文件

  vim 01-保存網頁圖片到本地

  思路:

  首先找到一個網頁圖片,右擊圖片,復制鏈接

  發送請求

  保存

  #with open(“a.png”,“wb”) as f:里傳遞的參數,第一個是文件名,第二個是打開參數wb,用二進制打開,w是字符串

  1 import requests

  2

  3 # 發送請求

  4 r = requests.get("https://2.python-requests.org/en/master/_static/requests-s idebar.png")

  5 # 保存

  6 with open("a.png","wb") as f:

  7 f.write(r.content)


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

红原县| 益阳市| 九台市| 南昌县| 乐昌市| 广南县| 华蓥市| 中阳县| 军事| 沙洋县| 明光市| 蒲城县| 静宁县| 呼和浩特市| 瑞金市| 壤塘县| 四子王旗| 香港| 安康市| 堆龙德庆县| 嘉善县| 铜陵市| 金平| 房山区| 温宿县| 黄龙县| 军事| 孝义市| 额尔古纳市| 昌邑市| 屯门区| 南开区| 嘉峪关市| 彩票| 扎赉特旗| 伊春市| 电白县| 巨鹿县| 安康市| 西乌珠穆沁旗| 阳谷县|