Python3 默認提供了urllib庫,可以爬取網頁信息,但其中確實有不方便的地方,如:處理網頁驗證和Cookies,以及Hander頭信息處理。
為了更加方便處理,有了更為強大的庫 urllib3 和 requests, 本節(jié)會分別介紹一下,以后我們著重使用requests。
1. urllib3庫的使用:
- 安裝:通過使用pip命令來安裝urllib3
pip install urllib3
- 簡單使用:
import urllib3
import re
# 實例化產生請求對象
http = urllib3.PoolManager()
# get請求指定網址
url = "http://www.baidu.com"
res = http.request("GET",url)
# 獲取HTTP狀態(tài)碼
print("status:%d" % res.status)
# 獲取響應內容
data = res.data.decode("utf-8")
# 正則解析并輸出
print(re.findall("
",data))
- 其他設置: 增加了超時時間,請求參數等設置
import urllib3
import re
url = "http://www.baidu.com"
http = urllib3.PoolManager(timeout = 4.0) #設置超時時間
res = http.request(
"GET",
url,
#headers={
# 'User-Agent':'Mozilla/5.0(WindowsNT6.1;rv:2.0.1)Gecko/20100101Firefox/4.0.1',
#},
fields={'id':100,'name':'lisi'}, #請求參數信息
)
print("status:%d" % res.status)
data = res.data.decode("utf-8")
print(re.findall("
",data))
2. requests庫的使用:
- 安裝:通過使用pip命令來安裝requests
pip install requests
- 簡單使用:
import requests
import re
url = "http://www.baidu.com"
# 抓取信息
res = requests.get(url)
#獲取HTTP狀態(tài)碼
print("status:%d" % res.status_code)
# 獲取響應內容
data = res.content.decode("utf-8")
#解析出結果
print(re.findall("
",data))
審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
信息
+關注
關注
0文章
407瀏覽量
36285 -
python
+關注
關注
57文章
4850瀏覽量
89333
發(fā)布評論請先 登錄
相關推薦
熱點推薦
Python調用API教程
兩個不同系統(tǒng)之間的信息交互。在這篇文章中,我們將詳細介紹Python調用API的方法和技巧。 一、用Requests庫發(fā)送HTTP請求 使用Pyth
目前最新版的userapps如何安裝D1s環(huán)境?
Traceback (most recent call last):
File \"/usr/lib/python3/dist-packages/urllib3/connection.py\"
發(fā)表于 09-25 07:33
linux虛擬環(huán)境中調用Linux 版matlab編譯的python庫時出錯
matlab代碼編譯為CAO_python的python庫,其中cp_Main_python.m為入口文件,編譯后生成的文件有mccExcludedFiles.log、setup.py
發(fā)表于 07-18 10:40
使用Python實現(xiàn)xgboost教程
裝: bash復制代碼conda install -c conda-forge xgboost 2. 導入必要的庫 在你的Python腳本或Jupyter Notebook中,導入必要的庫
適用于MySQL和MariaDB的Python連接器:可靠的MySQL數據連接器和數據庫
和 MariaDB 數據庫服務器以及托管數據庫服務,以對存儲的數據執(zhí)行創(chuàng)建、讀取、更新和刪除操作。該解決方案完全實現(xiàn)了 Python DB API 2.0 規(guī)范,并作為 Windows、macOS
適用于Oracle的Python連接器:可訪問托管以及非托管的數據庫
適用于 Oracle 的 Python 連接器 適用于 Oracle 的 Python 連接器是一種可靠的連接解決方案,用于從 Python 應用程序訪問 Oracle 數據庫服務器和
云數據庫是哪種數據庫類型?
云數據庫是一種部署在虛擬計算環(huán)境中的數據庫,它融合了云計算的彈性和可擴展性,為用戶提供高效、靈活的數據庫服務。云數據庫主要分為兩大類:關系型
數據庫事件觸發(fā)的設置和應用
數據庫無論對于生產管理還是很多的實際應用都非常重要。小編這次聊一下數據庫事件觸發(fā)的應用。示例使用了postgresql和Python。
HAL庫和標準庫的區(qū)別 HAL庫與CMSIS的關系
在嵌入式系統(tǒng)開發(fā)中,HAL(硬件抽象層)庫和標準庫是兩種常用的軟件庫,它們在功能和使用場景上有所不同。 1. 標準庫 標準
KiCon演講回顧(六):Würth Elektronik KiCad 庫設計與管理
.wrl和.step兩種格式。 需要的操作: 重命名 縮放 改變坐標系 導出.wrl和.step文件。 解決方法:使用 Python 腳本實現(xiàn)自動化 挑戰(zhàn)2:封裝 器件信息數據庫和Python腳本自動化。
使用Python進行串口通信的案例
當然!以下是一個使用Python進行串口通信的簡單示例。這個示例展示了如何配置串口、發(fā)送數據以及接收數據。我們將使用 pyserial 庫,這是一個非常流行的用于串口通信的Python庫
NVIDIA發(fā)布cuPyNumeric加速計算庫
該加速計算庫幫助科研人員無縫地擴展到強大的計算集群,并且無需修改 Python 代碼,推進科學發(fā)現(xiàn)。

python中urllib3庫和requests庫的使用
評論