亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

python正則表達式

難度初級
時長 1小時29分
學習人數
綜合評分9.40
211人評價 查看評價
9.7 內容實用
9.4 簡潔易懂
9.1 邏輯清晰

已采納回答 / qq_慕桂英3283314
因為re.search函數里‘str1’表示的是字符串str1,而不是你上面定義的字符串變量str1,改為re.search(r'\d+',str1)就可以了。

已采納回答 / 阿德羅斯
直接寫入,你保存的就是一個地址,打開在讀取之后保存的才是圖片

已采納回答 / redrose2100
\1表示使用編號為1的分組,在前面有個括號([\w]+>) 這個括號內的就表示是編號為1的分組,如果這個正則表達式中有多個括號,就是說有多個分組,然后想復用第n個分組,就加一個\n,就OK了,不知道有沒有說清楚

已采納回答 / SilverTown
py文件要和你找的這個imooc.txt在同一個路徑下,才可以直接找到,否則要用文件路徑

已采納回答 / 慕尼黑7825836
正則表達式在進行數量匹配時有{},+,*,?其中.*代表匹配除換行符以外的任意字符任意次,可以是0次。.代表除換行符以外的任意字符,*代表任意次,相當于{0,}
后邊多一個?表示懶惰模式。必須跟在*或者+后邊用.*??是懶惰匹配,一旦匹配到第一個就不往下走了。.*+是無限匹配直到最后一個。

已采納回答 / 芳芳菲菲
可以在req = urllib2.urlopen('http:'+url)上面 print 'http:'+url, 就會發現問題所在。listurl = re.findall(r'//.+\.jpg*',buf)這個地方的正則錯誤,應該使用非貪婪匹配模式,改為listurl = re.findall(r'//.+?\.jpg',buf),即可。

已采納回答 / 小酸梨ss
因為第一個字符是字母不是數字,所以沒有匹配成功

已采納回答 / 慕尼黑8959533
listurl = re.sub(r'src="','http:',str(listurl))的這一步結果是一個str,還需要再將地址匹配出來,多寫一步:listurl = re.findall(r'http:.+?\.jpg'),這樣得到的結果是list

已采納回答 / qq_愛吃羊的鯨魚_0
\1就是代表了前面“([\w]+>)”這些內容,你將\1替換掉就成了ma=re.match(r'<([\w]+>)[\w]+</([\w]+>)','<book>python</book>')? 其中括號已經沒有意義,去掉后就變成ma=re.match(r'<[\w]+>[\w]+</[\w]+>','<book>python</book>')? 這樣看就應該沒問題了吧。后面加1匹配不出來的原因也是應為&...

已采納回答 / Poison丶刺心
[1-9]?[0-9]:這個里面是兩個部分[1-9]?和[0-9]第一部分:是匹配1到9之間的數字出現0次或1次第二部分:是匹配0到9之間的數字至少出現一次所以匹配‘09’這個字符串的時候,第一部分中不包含‘0’這個字符串,暫時的匹配結果為‘’(即空字符串),所以執行第二部分,第二部分包含‘0’,暫時的匹配結果為‘0’,匹配結束,輸出結果‘0’

已采納回答 / 慕斯卡5018863
這個涉及寫的時候URL重定向類似的問題,沒影響的,是網頁本身的問題,和你爬的沒關系。

已采納回答 / 賴lai
我猜,打開最新的鏈接是這樣的http://www.xianlaiwan.cn/course/list?sort=last,如果鏈接沒有參數sort=last的話,慕課網就默認返回的是最熱的顯示內容吧,畢竟通過最熱,可以讓用戶更好的找到當前熱門的自己喜歡的課程吧

已采納回答 / qq_AI小艾_0
應該是網頁的代碼有變化了。我的參考代碼是這樣的?。篿mport reimport requestsimport osdef geturl():? ? if not os.path.exists("D:\\IMMOC"):? ? ? ? os.makedirs("D:\\IMMOC")? ? count=1? ? res=requests.get('http://www.xianlaiwan.cn/course/list')? ? re_search=re.findall(r'src=.*\.jpg',res.te...

已采納回答 / 隔壁碼農老唐
listurl = re.findall(r'http.+?\.jpg', buf) 改成非貪婪模式就行了

已采納回答 / 慕粉3606827
我自己試了一下,發現會讀取出這種如圖1的結果,我個人猜測是因為在正則表達式中使用了+這個貪婪模式的字符,所以會盡量匹配多的字符,所以看圖中就知道,它把兩個地址的字符串都匹配進...
首頁上一頁123下一頁尾頁
課程須知
本課程是Python中級課程 1、本課程在linux講解,最好有linux開發環境 1、熟練掌握Python開發語言基礎語法
老師告訴你能學到什么?
1.正則表達式基本語法 2.使用re模塊處理文本

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?

舉報

0/150
提交
取消