正則表達式
1.調用模式
import re
pattern = re,compile(r'',re.S)
result = re.findall(pattern,text)
#查找全部
result = re.find()
#????????????????
result = re.match()
#匹配否和條件的第一個
2.匹配模式
1. re.match(pattern,text)
#嘗試從字符串的開始開始匹配
2. re.search(pattern,html)
#在字符串內查找模式匹配,只找到第一個匹配然后返回
‘’‘
re.match只匹配字符串的開始,如果字符串開始不符合正則表達式规个,則匹配失敗葬荷,函數返回None;而re.search匹配整個字符串越败,直到找到一個匹配。
’‘’
3. re.sub(pattern,reply,text舷手,count)
#用string替換reply,count為替換個數
#用于替換字符串中的匹配項
4. re.spilt(r'\s+',text')
#分割字符串劲绪;按空格分割
5.re.findall(pattern,text)
#
6.re.compile(r'',re.S)
#
小測試:
url = 'http://www.mzitu.com/'
headers = {
'User-Agent': "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/22.0.1207.1 Safari/537.1"}
html = requests.get(url,headers=headers).text
#print(html)
pattern = re.compile(r'<a href="(.*?)".*?>(.*?)</a>',re.S)
results = re.findall(pattern,html)
#print(results)
for result in results:
print(result)