Python3 默認(rèn)提供了urllib庫,可以爬取網(wǎng)頁信息,但其中確實(shí)有不方便的地方,如:處理網(wǎng)頁驗(yàn)證和Cookies,以及Hander頭信息處理。
為了更加方便處理,有了更為強(qiáng)大的庫 urllib3
和 requests
, 本節(jié)會分別介紹一下,以后我們著重使用requests
。
1. urllib3庫的使用:
- 安裝:通過使用pip命令來安裝urllib3
pip install urllib3
- 簡單使用:
import urllib3
import re
# 實(shí)例化產(chǎn)生請求對象
http = urllib3.PoolManager()
# get請求指定網(wǎng)址
url = "http://www.baidu.com"
res = http.request("GET",url)
# 獲取HTTP狀態(tài)碼
print("status:%d" % res.status)
# 獲取響應(yīng)內(nèi)容
data = res.data.decode("utf-8")
# 正則解析并輸出
print(re.findall("
",data))
- 其他設(shè)置: 增加了超時時間,請求參數(shù)等設(shè)置
import urllib3
import re
url = "http://www.baidu.com"
http = urllib3.PoolManager(timeout = 4.0) #設(shè)置超時時間
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'}, #請求參數(shù)信息
)
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)
# 獲取響應(yīng)內(nèi)容
data = res.content.decode("utf-8")
#解析出結(jié)果
print(re.findall("
",data))
審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
信息
+關(guān)注
關(guān)注
0文章
407瀏覽量
36268 -
python
+關(guān)注
關(guān)注
56文章
4849瀏覽量
89139
發(fā)布評論請先 登錄
相關(guān)推薦
熱點(diǎn)推薦
目前最新版的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)境中調(diào)用Linux 版matlab編譯的python庫時出錯
matlab代碼編譯為CAO_python的python庫,其中cp_Main_python.m為入口文件,編譯后生成的文件有mccExcludedFiles.log、setup.py
發(fā)表于 07-18 10:40
使用Python實(shí)現(xiàn)xgboost教程
裝: bash復(fù)制代碼conda install -c conda-forge xgboost 2. 導(dǎo)入必要的庫 在你的Python腳本或Jupyter Notebook中,導(dǎo)入必要的庫
適用于MySQL和MariaDB的Python連接器:可靠的MySQL數(shù)據(jù)連接器和數(shù)據(jù)庫
和 MariaDB 數(shù)據(jù)庫服務(wù)器以及托管數(shù)據(jù)庫服務(wù),以對存儲的數(shù)據(jù)執(zhí)行創(chuàng)建、讀取、更新和刪除操作。該解決方案完全實(shí)現(xiàn)了 Python DB API 2.0 規(guī)范,并作為 Windows、macOS

適用于Oracle的Python連接器:可訪問托管以及非托管的數(shù)據(jù)庫
適用于 Oracle 的 Python 連接器 適用于 Oracle 的 Python 連接器是一種可靠的連接解決方案,用于從 Python 應(yīng)用程序訪問 Oracle 數(shù)據(jù)庫服務(wù)器和
云數(shù)據(jù)庫是哪種數(shù)據(jù)庫類型?
云數(shù)據(jù)庫是一種部署在虛擬計(jì)算環(huán)境中的數(shù)據(jù)庫,它融合了云計(jì)算的彈性和可擴(kuò)展性,為用戶提供高效、靈活的數(shù)據(jù)庫服務(wù)。云數(shù)據(jù)庫主要分為兩大類:關(guān)系型
數(shù)據(jù)庫事件觸發(fā)的設(shè)置和應(yīng)用
數(shù)據(jù)庫無論對于生產(chǎn)管理還是很多的實(shí)際應(yīng)用都非常重要。小編這次聊一下數(shù)據(jù)庫事件觸發(fā)的應(yīng)用。示例使用了postgresql和Python。
HAL庫和標(biāo)準(zhǔn)庫的區(qū)別 HAL庫與CMSIS的關(guān)系
在嵌入式系統(tǒng)開發(fā)中,HAL(硬件抽象層)庫和標(biāo)準(zhǔn)庫是兩種常用的軟件庫,它們在功能和使用場景上有所不同。 1. 標(biāo)準(zhǔn)庫 標(biāo)準(zhǔn)
KiCon演講回顧(六):Würth Elektronik KiCad 庫設(shè)計(jì)與管理
.wrl和.step兩種格式。 需要的操作: 重命名 縮放 改變坐標(biāo)系 導(dǎo)出.wrl和.step文件。 解決方法:使用 Python 腳本實(shí)現(xiàn)自動化 挑戰(zhàn)2:封裝 器件信息數(shù)據(jù)庫和Python腳本自動化。

使用Python進(jìn)行串口通信的案例
當(dāng)然!以下是一個使用Python進(jìn)行串口通信的簡單示例。這個示例展示了如何配置串口、發(fā)送數(shù)據(jù)以及接收數(shù)據(jù)。我們將使用 pyserial 庫,這是一個非常流行的用于串口通信的Python庫
NVIDIA發(fā)布cuPyNumeric加速計(jì)算庫
該加速計(jì)算庫幫助科研人員無縫地?cái)U(kuò)展到強(qiáng)大的計(jì)算集群,并且無需修改 Python 代碼,推進(jìn)科學(xué)發(fā)現(xiàn)。
Python庫解析:通過庫實(shí)現(xiàn)代理請求與數(shù)據(jù)抓取
在Python中,有多個庫可以幫助你實(shí)現(xiàn)代理請求和數(shù)據(jù)抓取。這些庫提供了豐富的功能和靈活的API,使得你可以輕松地發(fā)送HTTP請求、處理響應(yīng)、解析HTML/XML/JSON數(shù)據(jù),以及進(jìn)
評論