python爬虫 正则表达式解析


Posted in Python onSeptember 28, 2019

这篇文章主要介绍了python爬虫 正则表达式解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

- re.I # 忽略大小写
- re.M # 多行匹配,将正则作用到源数据的每一行
- re.S # 单行匹配,将正则作用到整个源数据,输出一个整体字符串(包括换行符也打印)

string = '''fall in love with you
i love you very much
i love she
i love her'''
# 去除以i开头的每一行数据
re.findall('^i.*',string,re.M)

['i love you very much', 'i love she', 'i love her']

#匹配全部行
string1 = """细思极恐
你的队友在看书
你的敌人在磨刀
你的闺蜜在减肥
隔壁老王在练腰
"""
re.findall('.*',string1,re.S)

['细思极恐\n你的队友在看书\n你的敌人在磨刀\n你的闺蜜在减肥\n隔壁老王在练腰\n', '']

爬取糗事百科中所有的图片进行保存

import requests
import re
import urllib
import os

url = 'https://www.qiushibaike.com/pic/page/%d/?s=5170552'
# 自定义请求头信息
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的文件夹,如果不存在则创建文件夹
if not os.path.exists('./qiutu'):
  os.mkdir('./qiutu')
# 手动输入开始页,结束页
start_page = int(input('start>>>'))
end_page = int(input('end>>>'))

for page in range(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('<div class="thumb">.*?<img src="(.*?)" alt=.*?</div>',page_text,re.S)

# 给每一个图片url添加https协议头
  for img_url in img_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')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Pyramid将models.py文件的内容分布到多个文件的方法
Nov 27 Python
python 全局变量的import机制介绍
Sep 07 Python
Python获取昨天、今天、明天开始、结束时间戳的方法
Jun 01 Python
Python 实现「食行生鲜」签到领积分功能
Sep 26 Python
python清除字符串前后空格函数的方法
Oct 21 Python
Python判断是否json是否包含一个key的方法
Dec 31 Python
python学生管理系统学习笔记
Mar 19 Python
python3中类的继承以及self和super的区别详解
Jun 26 Python
python pprint模块中print()和pprint()两者的区别
Feb 10 Python
python 匿名函数与三元运算学习笔记
Oct 23 Python
python实现数学模型(插值、拟合和微分方程)
Nov 13 Python
Python破解极验滑动验证码详细步骤
May 21 Python
python爬虫 Pyppeteer使用方法解析
Sep 28 #Python
python安装scipy的步骤解析
Sep 28 #Python
python网络爬虫 CrawlSpider使用详解
Sep 27 #Python
python numpy存取文件的方式
Apr 01 #Python
100行Python代码实现每天不同时间段定时给女友发消息
Sep 27 #Python
使用Fabric自动化部署Django项目的实现
Sep 27 #Python
Win10+GPU版Pytorch1.1安装的安装步骤
Sep 27 #Python
You might like
也谈php网站在线人数统计
2008/04/09 PHP
php操作mysqli(示例代码)
2013/10/28 PHP
php图片处理函数获取类型及扩展名实例
2014/11/19 PHP
非常实用的php验证码类
2016/05/15 PHP
PHP批量修改文件名称的方法分析
2017/02/27 PHP
利用PHP判断是否是连乘数字串的方法示例
2017/07/03 PHP
php简单实现单态设计模式的方法分析
2017/07/28 PHP
PHP封装XML和JSON格式数据接口操作示例
2019/03/06 PHP
JQuery操作iframe父页面与子页面的元素与方法(实例讲解)
2013/11/20 Javascript
jQuery实现带滚动导航效果的全屏滚动相册实例
2015/06/19 Javascript
微信和qq时间格式模板实例详解
2016/10/21 Javascript
AngularJS1.X学习笔记2-数据绑定详解
2017/04/01 Javascript
详解Node.js实现301、302重定向服务
2017/04/07 Javascript
使用Bootstrap打造特色进度条效果
2017/05/02 Javascript
详解用vue.js和laravel实现微信支付
2017/06/23 Javascript
基于EasyUI的基础之上实现树形功能菜单
2017/06/28 Javascript
Vue学习笔记之表单输入控件绑定
2017/09/05 Javascript
在微信小程序里使用watch和computed的方法
2018/08/02 Javascript
详解Vue2 添加对scss的支持
2019/01/02 Javascript
vue实现点击出现操作弹出框的示例
2020/11/05 Javascript
解决python报错MemoryError的问题
2018/06/26 Python
在Python中调用Ping命令,批量IP的方法
2019/01/26 Python
详解Python中的正斜杠与反斜杠
2019/08/09 Python
英国豪华装饰照明品牌的在线零售商:Inspyer Lighting
2019/12/10 全球购物
教师通用专业自荐书范文
2014/02/11 职场文书
高考备战决心书
2014/03/11 职场文书
品质主管岗位职责
2014/03/16 职场文书
传播学专业毕业生自荐书
2014/07/01 职场文书
党的生日活动方案
2014/08/15 职场文书
金融保险专业求职信
2014/09/03 职场文书
学习走群众路线心得体会
2014/11/05 职场文书
市级三好学生评语
2014/12/29 职场文书
导游词之新疆-喀纳斯
2019/10/10 职场文书
通过Qt连接OpenGauss数据库的详细教程
2021/06/23 PostgreSQL
CDPR谈《巫师》新作用虚幻5原因 称不会为Epic独占
2022/04/06 其他游戏
Python软件包安装的三种常见方法
2022/07/07 Python