亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

python爬蟲系列(三)

系統(tǒng) 2080 0

常用正則表達(dá)式

如果沒猜錯的話當(dāng)大家看了我寫的python爬蟲系列二的話我想你們心中一定有千萬匹馬兒跑過,其實(shí)我想說的是關(guān)于上篇表達(dá)式的內(nèi)容你們只需要了解一下即可因為上篇主要是為了引入一些概念來解釋爬蟲爬的到底是啥,感受感受。那么接下來我就來介紹一些常用的內(nèi)容
\w 匹配字母數(shù)字及下劃線
\W 匹配非字母數(shù)字及下劃線
\s 匹配任意空白字符,等價于 [\t\n\r\f].
\S 匹配任意非空字符
\d 匹配任意數(shù)字,等價于 [0-9].
\D 匹配任意非數(shù)字
re.I 忽略大小寫
re.M 多行模式
re.S 即為 . 并且包括換行符在內(nèi)的任意字符(. 不包括換行符)
集字符[ ]
* 表示一個元素可出現(xiàn)0或多次
+表示出現(xiàn)一次或多次
?非貪婪模式
( )子模式
{ }一個元素或模式出現(xiàn){m,n}m到n次,n可以不寫為至少幾次{m,}

實(shí)戰(zhàn)演練

字符串python

            
              
                import
              
               re 
string
              
                =
              
              
                'python'
              
              
                #我們匹配出python
              
              
path 
              
                =
              
               re
              
                .
              
              
                compile
              
              
                (
              
              
                'p\w\w\w\wn'
              
              
                ,
              
              re
              
                .
              
              I
              
                )
              
              
path
              
                .
              
              findall
              
                (
              
              string
              
                )
              
              
                #這里和re.findall(path,string)是一樣的
              
            
          

這里我們用了\w來匹配。接下來我集字符和*

            
              
                import
              
               re 
string
              
                =
              
              
                'python'
              
              
                #我們匹配出python
              
              
path 
              
                =
              
               re
              
                .
              
              
                compile
              
              
                (
              
              'p
              
                [
              
              y
              
                -
              
              z
              
                ]
              
              
                *
              
              thon
              
                ,
              
              re
              
                .
              
              I
              
                )
              
              
path
              
                .
              
              findall
              
                (
              
              string
              
                )
              
            
          

也可以這樣`

            
              
                import
              
               re 
string
              
                =
              
              
                'python'
              
              
                #我們匹配出python
              
              
path 
              
                =
              
               re
              
                .
              
              
                compile
              
              
                (
              
              
                'p.*'
              
              
                ,
              
              re
              
                .
              
              I
              
                )
              
              
path
              
                .
              
              findall
              
                (
              
              string
              
                )
              
            
          

或者

            
              
                import
              
               re 
string
              
                =
              
              
                'python'
              
              
                #我們匹配出python
              
              
path 
              
                =
              
               re
              
                .
              
              
                compile
              
              
                (
              
              'py
              
                {
              
              
                0
              
              
                ,
              
              
                1
              
              
                }
              
              
                .
              
              
                *
              
              
                ,
              
              re
              
                .
              
              I
              
                )
              
              
path
              
                .
              
              findall
              
                (
              
              string
              
                )
              
            
          

接下來是貪婪模式和非貪婪模式(默認(rèn)貪婪)
string= pythonnn

            
              
                import
              
               re 
string
              
                =
              
              
                'pythonnn'
              
              
                #我們匹配出python
              
              
path 
              
                =
              
               re
              
                .
              
              
                compile
              
              
                (
              
              'p
              
                .
              
              
                *
              
              n
              
                ,
              
              re
              
                .
              
              I
              
                )
              
              
path
              
                .
              
              findall
              
                (
              
              string
              
                )
              
            
          

你會發(fā)現(xiàn)你匹配的是pythonnn
所以我們加個?

            
              
                import
              
               re 
string
              
                =
              
              
                'python'
              
              
                #我們匹配出python
              
              
path 
              
                =
              
               re
              
                .
              
              
                compile
              
              
                (
              
              'p
              
                .
              
              
                *
              
              ?n
              
                ,
              
              re
              
                .
              
              I
              
                )
              
              
path
              
                .
              
              findall
              
                (
              
              string
              
                )
              
            
          

最后請出我們的()
這個是什么呢,演示一下

            
              
                import
              
               re 
string
              
                =
              
              
                'python'
              
              
                #我們匹配出ython
              
              
path 
              
                =
              
               re
              
                .
              
              
                compile
              
              
                (
              
              
                'p(.*)'
              
              
                ,
              
              re
              
                .
              
              I
              
                )
              
              
path
              
                .
              
              findall
              
                (
              
              string
              
                )
              
              
                #改一下又是什么呢我們匹配thon
              
              
path 
              
                =
              
               re
              
                .
              
              
                compile
              
              
                (
              
              
                'y(.*)'
              
              
                ,
              
              re
              
                .
              
              I
              
                )
              
              
path
              
                .
              
              findall
              
                (
              
              string
              
                )
              
            
          

結(jié)果我想你已經(jīng)猜到了吧?來慢慢想一下敲一下。那么常用的基本上就這樣上一篇不要求你一定要記下來但是這一篇如果你想要成為高手,最好記住?。。?

這里還要強(qiáng)調(diào)一個點(diǎn)那就是匹配特殊元素比如www.python.ory中.可以表示任意元素所以它可以和wwwxpythonmory匹配所以要對其轉(zhuǎn)義但是要加\ \轉(zhuǎn)義即 :www\\.python\\.ory或者r’www\.python\.ory’或者直接用re.escape()方法

自動搜索爬蟲

看名字你可能覺得好高大上好像不是我等可以接觸的,其實(shí)不然。現(xiàn)在打開你的瀏覽器

在這里插入圖片描述

輸入如下內(nèi)容/s wd=python
在這里插入圖片描述
猜到什么了么??!下篇繼續(xù)(介紹實(shí)戰(zhàn)完urllib.request再來解析庫和request不要著急慢慢來)

日常名言結(jié)束: 經(jīng)驗顯示,成功多因于赤忱,而少出于能力。勝利者就是把自己身體和靈魂都獻(xiàn)給工作的人。—— 查爾斯·巴克斯頓


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 青青青在线视频播放免费 | 国产欧美一区二区另类精品 | 久久亚洲成人 | 亚洲一区二区在线免费观看 | 色综合成人 | 成人四虎影院 | 久草在线精品视频 | 日韩在线看片中文字幕不卡 | 国产xxxx做受性欧美88 | 亚洲日本视频在线 | 五月网婷婷| 国产大片中文字幕 | 午夜在线观看cao | 99精品久久久久久久婷婷 | 青草福利| 曰本lesxxxx在线观看视频 | 亚洲国产精品高清在线一区 | 日韩成人 | 一级aa 毛片高清免费看 | 欧美精品国产第一区二区 | 国产99视频精品免视看7 | 九九视频免费精品视频免费 | 日韩不卡在线观看 | 香蕉视频免费看 | 天天色播| 成年人黄色在线观看 | 日韩欧美色视频在线观看 | 亚洲a网 | 日本黄色小视频在线观看 | 亚洲成人一区 | 日日夜夜操美女 | 欧美一级人与动毛片免费播放 | 国产精品青草久久 | 91精品免费在线观看 | 国产国拍亚洲精品午夜不卡17 | 色综合久久加勒比高清88 | 网色视频| www.香蕉视频 | 久久香蕉国产线看免费 | 欧美在线视频一区二区 | 日韩伦理一区二区三区 |