資料解析原理概述
案例:這裡爬取的是糗事百科中的部分,我們可以先檢查一下頁面的html。
可以看到,所有都以這樣的標籤形式儲存在頁面中,所以我們要想爬取頁面上的,首先應該先獲取頁面的html檔案,然後以正規表示式,讓的標籤與整個html進行匹配,從而獲取到所有的src。**如下:
if __name__ ==
'__main__'
: headers =
# 建立乙個資料夾 儲存所有
ifnot os.path.exists(
"./qiutulibs"):
os.mkdir(
"./qiutulibs"
) url=
""for pagenum in(1
,13):
new_url=
format
(url%pagenum)
# 使用正則對進行解析——聚焦爬蟲
# 名稱
img_name=src.split(
'/')[-
1]img_path=
'./qiutulibs/'
+img_name
with
open
(img_path,
"wb"
)as fp:
#儲存二進位制的資料,用wb,同時也不需要指定編碼
fp.write(img_data)
print
(img_name+
)
爬蟲之正則和xpath
常用正規表示式回顧 單字元 除換行以外所有字元 aoe a w 匹配集合中任意乙個字元 d 數字 0 9 d 非數字 w 數字 字母 下劃線 中文 w 非 w s 所有的空白字元包,括空格 製表符 換頁符等等。等價於 f n r t v s 非空白 數量修飾 任意多次 0 至少1次 1 可有可無 0...
PHP正則之遞迴匹配
正則是否能處理括號配對的正則匹配.比如,對於如下的待匹配的字串 就是乙個括號配對的字串.而對於如下的待匹配字串 則不是乙個括號配對的字串.在以前,這種情況,正則無法處理,最多只能處理固定層數的遞迴,而無法處理無線遞迴的情況 而在perl 5.6以後,引入了乙個新的特性 recursive patte...
php zhegnze PHP正則之遞迴匹配
我記得早前有同事問,正則是否能處理括號配對的正則匹配.比如,對於如下的待匹配的字串 就是乙個括號配對的字串.而對於如下的待匹配字串 則不是乙個括號配對的字串.在以前,這種情況,正則無法處理,最多只能處理固定層數的遞迴,而無法處理無線遞迴的情況.而在perl 5.6以後,引入了乙個新的特性 recur...