python爬虫 正则表达式解析
这篇文章主要介绍了python爬虫正则表达式解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
- re.I#忽略大小写
-re.M#多行匹配,将正则作用到源数据的每一行
-re.S#单行匹配,将正则作用到整个源数据,输出一个整体字符串(包括换行符也打印)
string='''fallinlovewithyou
iloveyouverymuch
iloveshe
iloveher'''
#去除以i开头的每一行数据
re.findall('^i.*',string,re.M)
['iloveyouverymuch','iloveshe','iloveher']
#匹配全部行
string1="""细思极恐
你的队友在看书
你的敌人在磨刀
你的闺蜜在减肥
隔壁老王在练腰
"""
re.findall('.*',string1,re.S)
['细思极恐\n你的队友在看书\n你的敌人在磨刀\n你的闺蜜在减肥\n隔壁老王在练腰\n','']
爬取糗事百科中所有的图片进行保存
importrequests
importre
importurllib
importos
url='https://www.qiushibaike.com/pic/page/%d/?s=5170552'
#自定义请求头信息
headers={
'User-Agent':'Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/72.0.3626.119Safari/537.36'
}
#判断是否存在名为qiutu的文件夹,如果不存在则创建文件夹
ifnotos.path.exists('./qiutu'):
os.mkdir('./qiutu')
#手动输入开始页,结束页
start_page=int(input('start>>>'))
end_page=int(input('end>>>'))
forpageinrange(start_page,end_page+1):
#按照每页url形式拼接指定url
new_url=format(url%page)
#发起请求
page_text=requests.get(url=new_url,headers=headers).text
#使用正则找出page_text页面中所有图片url
img_url_list=re.findall('.*?',page_text,re.S)
#给每一个图片url添加https协议头
forimg_urlinimg_url_list:
img_url='https:'+img_url
#将图片url切割去除图片名称,作为存储时图片的名称
img_name=img_url.split('/')[-1]
img_path='qiutu/'+img_name、
#对图片做持久化存储
urllib.request.urlretrieve(url=img_url,filename=img_path)
print(img_path,'下载成功')
print('over')
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。