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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python补充urllib教程,Python爬虫之urllib基础用法教程

發布時間:2025/3/12 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python补充urllib教程,Python爬虫之urllib基础用法教程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

綜述

本系列文檔用于對Python爬蟲技術進行簡單的教程講解,鞏固自己技術知識的同時,萬一一不小心又正好對你有用那就更好了。

Python 版本是3.7.4

urllib庫介紹

它是 Python 內置的HTTP請求庫,也就是說我們不需要額外安裝即可使用,它包含四個模塊(主要對前三個模塊進行學習):

request : 它是最基本的 HTTP 請求模塊,我們可以用它來模擬發送一請求,就像在瀏覽器里輸入網址然后敲擊回車一樣,只需要給庫方法傳入 URL 還有額外的參數,就可以模擬實現這個過程了。

error : 異常處理模塊,如果出現請求錯誤,我們可以捕獲這些異常,然后進行重試或其他操作保證程序不會意外終止。

parse : 用于解析URL,提供了許多URL處理方法,比如拆分、解析、合并等等的方法,以及對參數的拼接等待。

robotparser : 主要是用來識別網站的robots.txt協議文件,然后判斷網站的那些數據可以爬,哪些數據不可以爬的,其實用的比較少。

urllib.request 介紹

urlopen()

1.參數說明(僅寫了四個最常用的參數)

url : 爬取目標的URL;

data : 請求參數,如果設置該參數,則請求默認為post請求;沒有默認為get請求;

timeout : 用于設置超時時間,單位為秒;

context : 必須是一個ssl.SSLContext類型,用來指定SSL設置,忽略未認證的CA證書;

2.具體用法

GET 請求方式

# 導入urllib庫

import urllib.request

# 向指定的url發送請求,并返回服務器響應的類文件對象

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

response = urllib.request.urlopen(url=url)

print(type(response))

# 類文件對象支持文件對象的操作方法,如read()方法讀取文件全部內容,返回字符串

html = response.read()

# html = response.readline() # 讀取一行

# html = response.readlines() # 讀取多行,返回列表

# 打印響應結果(byte類型)

print(html)

# 打印響應結果(utf-8類型)

# 二進制和字符串之間的相互轉碼使用 encode() 和 decode() 函數

# encode() 和 decode() 可帶參數,不寫默認utf-8,其他不再特別說明

print(html.decode())

# 打印狀態碼

# print(response.get_code())

print(response.status)

# 獲取響應頭

print(response.getheaders())

# 獲取響應頭Server信息

print(response.getheader('Server'))

# 獲取響應結果原因

print(response.reason)

POST 請求方式

# 導入urllib庫

import urllib.parse

import urllib.request

# 向指定的url發送請求,并返回

post_url = 'https://fanyi.baidu.com/sug'

# 傳入參數

form_data = {

'kw': 'honey'

}

# 格式化參數

form_data = urllib.parse.urlencode(form_data).encode()

response = urllib.request.urlopen(url=post_url, data=form_data)

# 打印服務器響應的類文件對象

print(type(response))

# 類文件對象支持文件對象的操作方法,如read()方法讀取文件全部內容,返回字符串

html = response.read()

# 打印響應結果(byte類型)

print(html)

# 打印響應結果(utf-8類型)

print(html.decode())

# 打印狀態碼

print(response.status)

# print(response.getcode())

# 獲取響應頭

print(response.getheaders())

# 獲取響應頭Server信息

print(response.getheader('Server'))

# 獲取響應結果原因

print(response.reason)

urlretrleve()

1.參數說明

url : 下載鏈接地址;

filename : 指定保存本地路徑(如果參數未指定,urllib會生成一個臨時文件保存數據);

總結

以上是生活随笔為你收集整理的python补充urllib教程,Python爬虫之urllib基础用法教程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。