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解析XML的几种常见方法的介绍
Apr 09 Python
Python中的os.path路径模块中的操作方法总结
Jul 07 Python
Python三级目录展示的实现方法
Sep 28 Python
python:socket传输大文件示例
Jan 18 Python
基于windows下pip安装python模块时报错总结
Jun 12 Python
Python实现将数据写入netCDF4中的方法示例
Aug 30 Python
Django实现学员管理系统
Feb 26 Python
Python实现二叉搜索树BST的方法示例
Jul 30 Python
Python上下文管理器类和上下文管理器装饰器contextmanager用法实例分析
Nov 07 Python
python 实现将list转成字符串,中间用空格隔开
Dec 25 Python
python剪切视频与合并视频的实现
Mar 03 Python
tensorflow/core/platform/cpu_feature_guard.cc:140] Your CPU supports instructions that this T
Jun 22 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框架Swoole定时器Timer特性分析
2014/08/19 PHP
PHP开发框架Laravel数据库操作方法总结
2014/09/03 PHP
PHP getDocNamespaces()函数讲解
2019/02/03 PHP
javascript 处理HTML元素必须避免使用的一种方法
2009/07/30 Javascript
基于jquery的设置页面文本框 只能输入数字的实现代码
2011/04/19 Javascript
JQuery判断子iframe何时加载完成解决方案
2013/08/20 Javascript
简单的JavaScript互斥锁分享
2014/02/02 Javascript
jquery实现很酷的网页顶部图标下拉菜单效果
2015/08/22 Javascript
JavaScript File分段上传
2016/03/10 Javascript
深入理解JavaScript定时机制
2016/10/27 Javascript
js实现百度登录框鼠标拖拽效果
2017/03/07 Javascript
使用jquery的jsonp如何发起跨域请求及其原理详解
2017/08/17 jQuery
详解Vue+axios+Node+express实现文件上传(用户头像上传)
2018/08/10 Javascript
微信小程序实现收货地址左滑删除
2020/11/18 Javascript
vscode 调试 node.js的方法步骤
2020/09/15 Javascript
Vue看了就会的8个小技巧
2021/01/21 Vue.js
windows下python连接oracle数据库
2017/06/07 Python
python图书管理系统
2020/04/05 Python
python如何压缩新文件到已有ZIP文件
2018/03/14 Python
详谈python在windows中的文件路径问题
2018/04/28 Python
使用python实现多维数据降维操作
2020/02/24 Python
Numpy 多维数据数组的实现
2020/06/18 Python
高考考python编程是真的吗
2020/07/20 Python
解决pytorch 模型复制的一些问题
2021/03/03 Python
canvas压缩图片以及卡片制作的方法示例
2018/12/04 HTML / CSS
荷兰天然和有机产品网上商城:BigGreenSmile.nl
2020/07/26 全球购物
德国净水壶和滤芯品牌:波尔德PearlCo(家用净水器)
2020/04/29 全球购物
创先争优制度
2014/01/21 职场文书
机械专业求职信
2014/05/25 职场文书
2014年高二班主任工作总结
2014/12/16 职场文书
车间主任岗位职责
2015/02/03 职场文书
博士给导师的自荐信
2015/03/06 职场文书
道歉情书大全
2015/05/12 职场文书
遗愿清单观后感
2015/06/09 职场文书
终止合同协议书范本
2016/03/22 职场文书
十大经典日本动漫排行榜 海贼王第三,犬夜叉仅第八
2022/03/18 日漫