用正则怎么将html文件中文字取出进行ASCII码转换?
用正则怎么将html文件中文字取出?今天碰到这个问题,思来想去尝试了好几种方法,历经一阵头脑风暴,最后终于还是解决了,想想还是来记录一下。一共定义了三个函数,包含正则切割、正则判断对象开头、ASCII码编码、ASCII码解码、isinstance函数使用、with上下文。
首先随便找了一段文字,创建了一个html文件,内容如下:
<p>tkinter模块(“Tk接口”)是Scriptics的Tk GUI工具包的<b>标准Python接口</b>,支持在Unix平台、Windows系统和Macintosh系统上运行。因为它由<a href="https://www.myblou.com">很多</a>小构件组成,当我们在设计一个GUI时,可以通过它丰富的构件库满足我们的需求。</p>
<br>
<p>tkinter模块(“Tk接口”)是Scriptics的Tk GUI<b>工具包</b>的标准Python接口,支持在Unix平台、Windows系统和Macintosh系统上运行。因为它由很多小构件组成,当我们在设计一个GUI时,可以通过它丰富的构件库满足我们的需求。</p>
<br>
本文转自:https://www.myblou.com/archives/1383
导入re模块:
import re
函数一:上面是将html文件中的所有文字(不包含标签)进行ASCII编码,并返回成一个列表。
def ASC_bianma():
'''将文字进行ASC编码'''
with open(r'C:\Users\dell\Desktop\zhengze\ni.html','r',encoding='utf8') as f:
wenzi = f.read() # 导出文件中的所有内容
pipei = re.split(r'(<.*?>)',wenzi) # 使用正则以标签进行分隔,返回一个列表
lst = []
for x in pipei:
if re.match('<.*?>',x) or re.match(r'\s',x): # 判断条件:如果是以<.*?>开头或是空白字符开头
lst.append(x) # 直接追加到l列表中
continue # 跳出本次循环进行下次循环
else:
for v in x:
bianma = ord(v) # 进行ASC编码
lst.append(bianma) # 追加到l列表中
return lst
函数二:函数二是将所有文字(不包含标签)进行ASCII解码,并返回成字符串。
def ASC_jiema(lis):
'''将ASC码转换成文字'''
ls = []
for x in lis:
if isinstance(x,int): # 判断x是不是int型
jiema = chr(x) # 进行ASC解码
ls.append(jiema) # 追加到t列表中
continue # 跳出本次循环进行下次循环
else:
ls.append(x) # 直接追加到t列表中
st = ''.join(ls) # 将t列表中的所有元素连接,返回成字符串
return st
函数三:将解码的字符串写入一个新建的html文件中。
用正则怎么将html文件中文字取出进行ASCII码转换?的更多相关文章
- 在eclipse中安装properties插件PropertiesEditor及设置(附图),ASCII码转换成中文
在eclipse中安装properties插件PropertiesEditor及设置(附图),ASCII码转换成中文安装成功后ASCII还是不能转换成中文的,原因是设置里面没有把编码设置为utf8的, ...
- 如何从 dump 文件中提取出 C# 源代码?
一:背景 相信有很多朋友在遇到应用程序各种奇葩问题后,拿下来一个dump文件,辛辛苦苦分析了大半天,终于在某一个线程的调用栈上找到了一个可疑的方法,但 windbg 常常是以 汇编 的方式显示方法代码 ...
- python中字符与ascii码转换
ASCII码转字符用chr()函数: 字符转ASCII码用ord()函数:
- 创建文件夹并解决解决unicode和ASCII码转换的问题
# -*- coding: UTF-8 -*-import sysimport timeimport os #解决unicode和ASCII码转换的问题reload(sys) #解决unicode和A ...
- python 中字符串转 二进制 /ASCII码
- Python之通配符--提取文件中的内容并输出
前言:我的学习进度其实没有那么快的,因为现在是网络工程师实习,只有晚上一点时间和周末有空,所以周一到周天的学习进度很慢,今天之所以突然跳到通配符是因为工作需要,大体讲一下我的工作需求:网络工程师就是写 ...
- Button 在布局文件中定义监听器,文字阴影,自定义图片,代码绘制样式,添加音效的方法
1.Button自己在xml文件中绑定监听器 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/andro ...
- 随性练习:excel中文字和链接存到html文件
这是一个简单的练习,主要是将excel中文字和链接存到html文件中,并且可通过点击文字直通链接 excel格式如下图示,我这里得excel是07版的,所以用到xlrd模块 代码: import xl ...
- 吴裕雄--天生自然python学习笔记:python文档操作批量替换 Word 文件中的文字
我们经常会遇到在不同的 Word 文件中的需要做相同的文字替换,若是一个一个 文件操作,会花费大量时间 . 本节案例可以找出指定目录中的所有 Word 文件(包含 子目录),并对每一个文件进行指定的文 ...
随机推荐
- 详解Java锁的升级与对比(1)——锁的分类与细节(结合部分源码)
前言 之前只是对Java各种锁都有所认识,但没有一个统一的整理及总结,且没有对"锁升级"这一概念的加深理解,今天趁着周末好好整理下之前记过的笔记,并归纳为此博文,主要参考资源为&l ...
- python3 多线程批量验证POC模板
#coding:utf-8 import threading,Queue,sys,os class RedisUN(threading.Thread): def __init__(self,queue ...
- [python应用]python简单图片抓取
前言 emmmm python简单图片抓取 1 import requests 2 import threading 3 import queue 4 from subprocess import P ...
- 玩转百度地图API(地图,坐标,标记,添加控件,2D图,混合图,智能搜索,地址解析器,信息窗口)
1.注册得到appkey 2.直接上代码 <!DOCTYPE html> <html> <head> <meta http-equiv="Conte ...
- 学好Flex布局并不容易
1. Flex布局介绍 CSS的传统布局解决方案,基于盒状模型,依赖display属性.position属性.float属性,对于一些特殊的布局,例如垂直居中,往往要想很多hack的方法来解决. 20 ...
- 5w 字 | 172 图 | 超级赛亚级 Spring Cloud 实战
一.PassJava 项目简介 PassJava-Learning 项目是 PassJava(佳必过)项目的学习教程.对架构.业务.技术要点进行讲解. PassJava 是一款 Java 面试刷题 的 ...
- linux(centos7.x)安装jdk
一.下载与安装 下载地址:链接:https://pan.baidu.com/s/1g7MF1xqlOxWnLGf2shl3NA 提取码:epae 下载完成后将安装包上传到linxu环境中,并将其 ...
- CodeChef-LECOINS Little Elephant and Colored Coins 题解
CodeChef-LECOINS Little Elephant and Colored Coins Little Elephant and Colored Coins The Little Elep ...
- nginx + lua-nginx-module 编译
摘要:本文主要介绍如何将lua-nginx-module 编译到nginx主程序中. nginx是一个高性能的反向代理服务器,lua是一个小巧的脚本语言,利用lua-nginx-module模块可以使 ...
- dubbo起停之服务消费
ReferenceAnnotationBeanPostProcessor继承了AnnotationInjectedBeanPostProcessors其实现了InstantiationAwareBea ...