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 相关文章推荐
python教程之用py2exe将PY文件转成EXE文件
Jun 12 Python
自动化Nginx服务器的反向代理的配置方法
Jun 28 Python
详解python eval函数的妙用
Nov 16 Python
在python3.5中使用OpenCV的实例讲解
Apr 02 Python
Python设计模式之状态模式原理与用法详解
Jan 15 Python
详解python校验SQL脚本命名规则
Mar 22 Python
python顺序执行多个py文件的方法
Jun 29 Python
python+OpenCV实现车牌号码识别
Nov 08 Python
PyCharm中配置PySide2的图文教程
Jun 18 Python
C++和python实现阿姆斯特朗数字查找实例代码
Dec 07 Python
jupyter 添加不同内核的操作
Feb 06 Python
python 多态 协议 鸭子类型详解
Nov 27 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程序中的常见漏洞进行攻击
2006/10/09 PHP
php基础知识:类与对象(2) 自动加载对象
2006/12/13 PHP
新安装的MySQL数据库需要注意的安全知识
2008/07/30 PHP
php 应用程序安全防范技术研究
2009/09/25 PHP
ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例
2014/07/22 PHP
javascript 图片上一张下一张链接效果代码
2010/03/12 Javascript
js 动态文字滚动的例子
2011/01/17 Javascript
File, FileReader 和 Ajax 文件上传实例分析(php)
2011/04/27 Javascript
fixedBox固定div漂浮代码支持ie6以上大部分主流浏览器
2014/06/26 Javascript
重写document.write实现无阻塞加载js广告(补充)
2014/12/12 Javascript
IE7浏览器窗口大小改变事件执行多次bug及IE6/IE7/IE8下resize问题
2015/08/21 Javascript
Node.js重新刷新session过期时间的方法
2016/02/04 Javascript
jQuery下拉菜单的实现代码
2016/11/03 Javascript
Vue.js父与子组件之间传参示例
2017/02/28 Javascript
layui文件上传实现代码
2017/05/20 Javascript
jQuery Jsonp跨域模拟搜索引擎
2017/06/17 jQuery
nodeJs爬虫的技术点总结
2018/05/13 NodeJs
关于微信小程序登录的那些事
2019/01/08 Javascript
在mpvue框架中使用Vant WeappUI组件库的注意事项【推进】
2019/06/09 Javascript
Vue实现点击显示不同图片的效果
2019/08/10 Javascript
Layui 解决表格异步调用后台分页的问题
2019/10/26 Javascript
微信小程序实现多选框全选与反全选及购物车中删除选中的商品功能
2019/12/17 Javascript
使用JS location实现搜索框历史记录功能
2019/12/23 Javascript
python发送邮件的实例代码(支持html、图片、附件)
2013/03/04 Python
Python3使用SMTP发送带附件邮件
2020/06/16 Python
在Python中Dataframe通过print输出多行时显示省略号的实例
2018/12/22 Python
Python替换月份为英文缩写的实现方法
2019/07/15 Python
在OpenCV里使用Camshift算法的实现
2019/11/22 Python
FORZIERI澳大利亚站:全球顶级奢华配饰精品店
2016/12/31 全球购物
环境科学毕业生自荐信
2013/11/21 职场文书
团员个人的自我评价
2013/12/02 职场文书
旅游管理专业大学生职业规划书
2014/02/27 职场文书
工作所在部门证明
2014/09/21 职场文书
学校领导班子成员查摆问题及整改措施
2014/10/28 职场文书
2015年市场部工作总结
2015/04/30 职场文书
家长意见和建议怎么写
2015/06/04 职场文书