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 相关文章推荐
Linux CentOS7下安装python3 的方法
Jan 21 Python
python3.5基于TCP实现文件传输
Mar 20 Python
python实现关闭第三方窗口的方法
Jun 28 Python
python web框架Flask实现图形验证码及验证码的动态刷新实例
Oct 14 Python
Python内置数据类型list各方法的性能测试过程解析
Jan 07 Python
在django项目中导出数据到excel文件并实现下载的功能
Mar 13 Python
Python 创建TCP服务器的方法
Jul 28 Python
Python3合并两个有序数组代码实例
Aug 11 Python
如何在 Matplotlib 中更改绘图背景的实现
Nov 26 Python
python中time、datetime模块的使用
Dec 14 Python
python 对xml解析的示例
Feb 27 Python
pytorch实现加载保存查看checkpoint文件
Jul 15 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 zip文件解压类代码
2009/12/02 PHP
phpmyadmin导入(import)文件限制的解决办法
2009/12/11 PHP
深入探讨PHP中的内存管理问题
2011/08/31 PHP
利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法
2011/12/19 PHP
php搜索文件程序分享
2015/10/30 PHP
解决thinkPHP 5 nginx 部署时,只跳转首页的问题
2019/10/16 PHP
Laravel5.1 框架响应基本用法实例分析
2020/01/04 PHP
飞鱼(shqlsl) javascript作品集
2006/12/16 Javascript
jQuery对象和Javascript对象之间转换的实例代码
2013/03/20 Javascript
jQuery实现 注册时选择阅读条款 左右移动
2013/04/11 Javascript
javascript之typeof、instanceof操作符使用探讨
2013/05/19 Javascript
Js 导出table内容到Excel的简单实例
2013/11/19 Javascript
基于jQuery的图片不完全按比例自动缩小
2014/07/11 Javascript
JavaScript检查某个function是否是原生代码的方法
2014/08/20 Javascript
超级简单实现JavaScript MVC 样式框架
2015/03/24 Javascript
javascript构造函数以及原型对象的理解
2017/01/13 Javascript
树结构之JavaScript
2017/01/24 Javascript
webpack 2.x配置reactjs基本开发环境详解
2017/08/08 Javascript
vue父组件通过props如何向子组件传递方法详解
2017/08/16 Javascript
JavaScript如何判断对象有某属性
2020/07/03 Javascript
vue2.* element tabs tab-pane 动态加载组件操作
2020/07/19 Javascript
vue实现图片按比例缩放问题操作
2020/08/11 Javascript
Python脚本实现格式化css文件
2015/04/08 Python
在Python的Django框架上部署ORM库的教程
2015/04/20 Python
在Django中URL正则表达式匹配的方法
2018/12/20 Python
对python numpy.array插入一行或一列的方法详解
2019/01/29 Python
python实现递归查找某个路径下所有文件中的中文字符
2019/08/31 Python
python实现的分层随机抽样案例
2020/02/25 Python
Tensorflow中的图(tf.Graph)和会话(tf.Session)的实现
2020/04/22 Python
python轮询机制控制led实例
2020/05/03 Python
英国马匹装备和马术用品购物网站:Equine Superstore
2019/03/03 全球购物
介绍一下Python下range()函数的用法
2013/11/07 面试题
应届医学毕业生求职信分享
2013/12/02 职场文书
可贵的沉默教学反思
2014/02/06 职场文书
仙境之桥观后感
2015/06/16 职场文书
常用的文件对应的MIME类型汇总
2022/04/26 HTML / CSS