热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python数据采集模块_Python数据采集模块2

--coding:utf-8--1.正则表达式(RegularExpression)2.Re正则表达式模块python的内置模块,使用

--coding:utf-8--

1.正则表达式(Regular Expression)

2.Re正则表达式模块

'''

python的内置模块,使用前 import re

表示方法:r'\d{3}\s+\d{3,8}'

2.2常用函数

re.complie(patern,flag = 0) :将字符串的正则表达式编译为Pattern对象

re.search(string[,pos[,endpos]]) 从string的任意位置开始匹配

re.match(string[,pos[,endpos]]) 从string的开头开始匹配 返回Match对象,否则返回None

re.findall(string[,pos[,endpos]]) 从string的任意位置开始匹配。返回一个列表

re.finditer(string[,pos[,endpos]]) 从string的任意位置开始匹配,返回一个迭代器

'''

import re

obj = re.match(r'\d{3}-\d{3,8}$','010-287688')

print(obj)

切分字符串 split()无法识别连续空格,使用re.split()+正则表达式组合

s = 'a b c d e r'

list01 = re.split(r'[\s,;]+',s)

list02 = s.split(' ')

print(list01)

print(list02)

3.logging日志模块

'''

python 内置标准库,用于输出运行日志,可以设置日志级别,日志保存路径,日志文件回滚

import logging

日志级别:使用范围,由高到低

1.FATAL:致命错误

2.CRITICAL:特别糟糕的,如内存耗尽,磁盘为空,一般很少用

3.ERROR:发生错误时,如IO操作失败或者连接问题

4.WARNING:发生很重要的时间,并不是错误

5.INFO:处理请求或者状态变化等日常事务

6.DEBUG:调试过程使用DEBUG等级

备注:5,6使用print()

'''

3.3使用

'''

1.设置日志首先需要使用logging.basiceConfig()函数设置日志信息的输出格式

基本语法:

logging.basicConfig(level = ?,format = ?)

level:日志级别

format:设置信息格式,如下

%(asctime)s:系统内时间

%(name)s:信息源名称

%(levelname)s:信息级别

%(message)s:信息内容

2.设置信息源名称,返回一个logger对象

logger = logging.getLogger(name)#name 系统级变量获取运行对象名称

'''

import logging

配置日志输出格式

logging.basicConfig(level = logging.INFO,format = '%(asctime)s - %(name)s - %(levelname)s - %(message)s')

logger = logging.getLogger(name)

logger.fatal('系统奔溃或发生致命错误,导致程序中断时需要输出的信息')

logger.critical('系统资源耗竭时需要输出的信息')

logger.error('系统报错异常时需要输出的信息')

logger.warning('系统运行警告时需要输出的信息')

logger.info('一般信息数据')

logger.debug('测试调试时需要输出的信息数据')

日志默认从info级别向上输出,debug不输出,太多

3日志写入文件

'''

FileHandle 用来将输出日志信息写入指定文件

步骤:

3.1 创建并设置logger

3.2 创建并设置FileHandle对象

3.3logger对象重新添加并替换原有的Handler处理器

'''

import logging

import os

import time

loger01 = logging.getLogger(name)

loger01.setLevel(logging.INFO)

formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

dirPath = os.path.join(os.getcwd(),'测试用例')

if not os.path.exists(dirPath):

os.mkdir(dirPath)

logFileName = time.strftime('%Y%m%d%H%M%S',time.localtime()) + 'log'

logPath = dirPath + os.sep + logFileName

fileHandle = logging.FileHandler(logPath)

fileHandle.setLevel(logging.INFO)

fileHandle.setFormatter(formatter)

loger01.addHandler(fileHandle)

loger01.fatal('系统奔溃或发生致命错误,导致程序中断时需要输出的信息')

loger01.critical('系统资源耗竭时需要输出的信息')

loger01.error('系统报错异常时需要输出的信息')

loger01.warning('系统运行警告时需要输出的信息')

loger01.info('一般信息数据')

loger01.debug('测试调试时需要输出的信息数据')



推荐阅读
  • 超级简单加解密工具的方案和功能
    本文介绍了一个超级简单的加解密工具的方案和功能。该工具可以读取文件头,并根据特定长度进行加密,加密后将加密部分写入源文件。同时,该工具也支持解密操作。加密和解密过程是可逆的。本文还提到了一些相关的功能和使用方法,并给出了Python代码示例。 ... [详细]
  • web.py开发web 第八章 Formalchemy 服务端验证方法
    本文介绍了在web.py开发中使用Formalchemy进行服务端表单数据验证的方法。以User表单为例,详细说明了对各字段的验证要求,包括必填、长度限制、唯一性等。同时介绍了如何自定义验证方法来实现验证唯一性和两个密码是否相等的功能。该文提供了相关代码示例。 ... [详细]
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 本文介绍了在处理不规则数据时如何使用Python自动提取文本中的时间日期,包括使用dateutil.parser模块统一日期字符串格式和使用datefinder模块提取日期。同时,还介绍了一段使用正则表达式的代码,可以支持中文日期和一些特殊的时间识别,例如'2012年12月12日'、'3小时前'、'在2012/12/13哈哈'等。 ... [详细]
  • Python爬虫中使用正则表达式的方法和注意事项
    本文介绍了在Python爬虫中使用正则表达式的方法和注意事项。首先解释了爬虫的四个主要步骤,并强调了正则表达式在数据处理中的重要性。然后详细介绍了正则表达式的概念和用法,包括检索、替换和过滤文本的功能。同时提到了re模块是Python内置的用于处理正则表达式的模块,并给出了使用正则表达式时需要注意的特殊字符转义和原始字符串的用法。通过本文的学习,读者可以掌握在Python爬虫中使用正则表达式的技巧和方法。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • r2dbc配置多数据源
    R2dbc配置多数据源问题根据官网配置r2dbc连接mysql多数据源所遇到的问题pom配置可以参考官网,不过我这样配置会报错我并没有这样配置将以下内容添加到pom.xml文件d ... [详细]
  • Imtryingtofigureoutawaytogeneratetorrentfilesfromabucket,usingtheAWSSDKforGo.我正 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • Spring学习(4):Spring管理对象之间的关联关系
    本文是关于Spring学习的第四篇文章,讲述了Spring框架中管理对象之间的关联关系。文章介绍了MessageService类和MessagePrinter类的实现,并解释了它们之间的关联关系。通过学习本文,读者可以了解Spring框架中对象之间的关联关系的概念和实现方式。 ... [详细]
  • 本文介绍了在CentOS 6.4系统中更新源地址的方法,包括备份现有源文件、下载163源、修改文件名、更新列表和系统,并提供了相应的命令。 ... [详细]
  • 本文详细介绍了Python中正则表达式和re模块的使用方法。首先解释了转义符的作用,以及如何在字符串中包含特殊字符。然后介绍了re模块的功能和常用方法。通过学习本文,读者可以掌握正则表达式的基本概念和使用技巧,进一步提高Python编程能力。 ... [详细]
author-avatar
zoudan的世界94129433
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有