python爬蟲 正則表達(dá)式解析
這篇文章主要介紹了python爬蟲 正則表達(dá)式解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
- re.I # 忽略大小寫
- re.M # 多行匹配,將正則作用到源數(shù)據(jù)的每一行
- re.S # 單行匹配,將正則作用到整個(gè)源數(shù)據(jù),輸出一個(gè)整體字符串(包括換行符也打?。?/p>
string = '''fall in love with you i love you very much i love she i love her''' # 去除以i開(kāi)頭的每一行數(shù)據(jù) re.findall('^i.*',string,re.M)
['i love you very much', 'i love she', 'i love her']
#匹配全部行 string1 = """細(xì)思極恐 你的隊(duì)友在看書 你的敵人在磨刀 你的閨蜜在減肥 隔壁老王在練腰 """ re.findall('.*',string1,re.S)
['細(xì)思極恐\n你的隊(duì)友在看書\n你的敵人在磨刀\n你的閨蜜在減肥\n隔壁老王在練腰\n', '']
爬取糗事百科中所有的圖片進(jìn)行保存
import requests import re import urllib import os url = 'https://www.qiushibaike.com/pic/page/%d/?s=5170552' # 自定義請(qǐng)求頭信息 headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Safari/537.36' } # 判斷是否存在名為qiutu的文件夾,如果不存在則創(chuàng)建文件夾 if not os.path.exists('./qiutu'): os.mkdir('./qiutu') # 手動(dòng)輸入開(kāi)始頁(yè),結(jié)束頁(yè) start_page = int(input('start>>>')) end_page = int(input('end>>>')) for page in range(start_page,end_page+1): # 按照每頁(yè)url形式拼接指定url new_url = format(url%page) # 發(fā)起請(qǐng)求 page_text = requests.get(url=new_url,headers=headers).text # 使用正則找出page_text頁(yè)面中所有圖片url img_url_list = re.findall('<div class="thumb">.*?<img src="(.*?)" alt=.*?</div>',page_text,re.S) # 給每一個(gè)圖片url添加https協(xié)議頭 for img_url in img_url_list: img_url = 'https:' + img_url # 將圖片url切割去除圖片名稱,作為存儲(chǔ)時(shí)圖片的名稱 img_name = img_url.split('/')[-1] img_path = 'qiutu/' + img_name、 # 對(duì)圖片做持久化存儲(chǔ) urllib.request.urlretrieve(url=img_url,filename=img_path) print(img_path,'下載成功') print('over')
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持我們。
欄 目:正則表達(dá)式
下一篇:循序漸進(jìn)掌握遞歸正則表達(dá)式【推薦】
本文標(biāo)題:python爬蟲 正則表達(dá)式解析
本文地址:http://mengdiqiu.com.cn/a1/zhengzebiaodashi/11134.html
您可能感興趣的文章
- 01-11正則表達(dá)式實(shí)現(xiàn)添加、刪除、替換三種功能
- 01-11python 用正則表達(dá)式篩選文本信息的實(shí)例
- 01-11正則表達(dá)式之匹配數(shù)字范圍
- 01-11python爬蟲正則表達(dá)式之處理?yè)Q行符
- 01-11正則表達(dá)式匹配路由的實(shí)現(xiàn)代碼
- 01-11正則表達(dá)式截取身份證號(hào)碼加密的方法
- 01-11js正則表達(dá)式 匹配兩個(gè)特定字符間的內(nèi)容示例
- 01-11MySQL使用正則表達(dá)式進(jìn)行查詢操作經(jīng)典實(shí)例總結(jié)
- 01-11python正則表達(dá)式之對(duì)號(hào)入座篇
- 01-11詳解正則表達(dá)式實(shí)現(xiàn)二代身份證號(hào)碼驗(yàn)證


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹(shù)的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 01-11正則表達(dá)式實(shí)現(xiàn)添加、刪除、替換三
- 01-11正則表達(dá)式之匹配數(shù)字范圍
- 01-11python 用正則表達(dá)式篩選文本信息的實(shí)
- 01-11正則表達(dá)式匹配路由的實(shí)現(xiàn)代碼
- 01-11python爬蟲正則表達(dá)式之處理?yè)Q行符
- 01-11js正則表達(dá)式 匹配兩個(gè)特定字符間的
- 01-11正則表達(dá)式截取身份證號(hào)碼加密的方
- 01-11python正則表達(dá)式之對(duì)號(hào)入座篇
- 01-11MySQL使用正則表達(dá)式進(jìn)行查詢操作經(jīng)典
- 01-11詳解正則表達(dá)式實(shí)現(xiàn)二代身份證號(hào)碼
隨機(jī)閱讀
- 01-11Mac OSX 打開(kāi)原生自帶讀寫NTFS功能(圖文
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 01-10SublimeText編譯C開(kāi)發(fā)環(huán)境設(shè)置
- 04-02jquery與jsp,用jquery
- 01-10C#中split用法實(shí)例總結(jié)
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 01-10delphi制作wav文件的方法