python正则表达式修复网站文章字体不统一的解决方法


Posted in Python onFebruary 21, 2013

网站的大框架下有定义的字体,包括字体大小和颜色等,用户发布文章的时候可能是从其他网站复制过来的文本,复制的过程也保留了字体描述信息。当文章在页面上显示的时候,默认先会使用文章中定义的字体,如果文章中字体不存在的话才显示大框架下定义的全局字体。因此网站的内容就会显得很乱,有的文章字体很大,有的文章字体很小,不美观。能统一的话就好了!

我对html和css等不是很熟,不知道是否能设置一下让文章中定义的字体内容失效。

笨人有笨办法,统一修改文章,将用户的对字体的定义全部删除!哈哈!如果手工完成的话,这可是一个相当繁重的任务,要首先预览页面,如果不统一的话就修改字体,幸好编辑器里面有个“清除格式”选项,全选文本,点一下就OK了,然后再保存……也很麻烦

如果仅仅是修改字体的话,最省事的方法当然是直接修改数据库,从数据库将文章提取出来,删除和字体相关的标签,然后再写回数据库。

专门查了一下html参考手册,对字体的定义有两种方法:

1.是用<font>标签,例如:

<p>
<font size="2" face="Verdana">
This is a paragraph.
</font>
</p>
<p>
<font size="3" face="Times">
This is another paragraph.
</font>
</p>

这种方法是不推荐使用的

2.使用style定义,例如:

<p style="font-family:verdana;font-size:80%;color:green">
This is a paragraph with some text in it. This is a paragraph with some text in it. This is a paragraph with some text in it. This is a paragraph with some text in it.
</p>

只要将字体的定义部分删除就可以了,用python的正则表达式模块进行替换无压力:
def format(data):
    '''将font标签和style标签全部删除'''
    p = re.compile(r'<font .*?>|</font>|style=\".*?\"')
    ret = p.sub('',data)
    if ret != data:
        return retelse:
        return None

python处理数据库相关操作时要注意更新数据方法,可以参考这篇文章:http://www.cnblogs.com/ma6174/archive/2013/02/21/2920126.html
Python 相关文章推荐
python将xml xsl文件生成html文件存储示例讲解
Dec 03 Python
python列表去重的二种方法
Feb 14 Python
Python删除windows垃圾文件的方法
Jul 14 Python
Python图像灰度变换及图像数组操作
Jan 27 Python
python实现批量监控网站
Sep 09 Python
python使用numpy读取、保存txt数据的实例
Oct 14 Python
PyTorch之图像和Tensor填充的实例
Aug 18 Python
Python实现不规则图形填充的思路
Feb 02 Python
基于plt.title无法显示中文的快速解决
May 16 Python
python二维图制作的实例代码
Dec 03 Python
用python画城市轮播地图
May 28 Python
Python万能模板案例之matplotlib绘制甘特图
Apr 13 Python
Python操作Mysql实例代码教程在线版(查询手册)
Feb 18 #Python
python的常见命令注入威胁
Feb 18 #Python
centos下更新Python版本的步骤
Feb 12 #Python
Python3.x和Python2.x的区别介绍
Feb 12 #Python
windows下安装python paramiko模块的代码
Feb 10 #Python
linux下安装easy_install的方法
Feb 10 #Python
Flask SQLAlchemy一对一,一对多的使用方法实践
Feb 10 #Python
You might like
浅析PHP页面局部刷新功能的实现小结
2013/06/21 PHP
codeigniter使用技巧批量插入数据实例方法分享
2013/12/31 PHP
PHP排序算法类实例
2015/06/17 PHP
PHP实现的迷你漂流瓶
2015/07/29 PHP
PHP实现抓取迅雷VIP账号的方法
2015/07/30 PHP
PHP下载大文件失败并限制下载速度的实例代码
2019/05/10 PHP
PHP利用pdo_odbc实现连接数据库示例【基于ThinkPHP5.1搭建的项目】
2019/05/13 PHP
PHP实现腾讯短网址生成api接口实例
2020/12/08 PHP
javascript的alert box在java中如何显示多行
2014/05/18 Javascript
通过JS判断联网类型和连接状态的实现代码
2015/04/01 Javascript
JS+CSS实现简易实用的滑动门菜单效果
2015/09/18 Javascript
AngularJS向后端ASP.NET API控制器上传文件
2016/02/03 Javascript
使用jquery/js获取iframe父子级、同级获取元素的方法
2016/08/05 Javascript
jquery+Jscex打造游戏力度条
2020/09/12 Javascript
JS获取一个表单字段中多条数据并转化为json格式
2017/10/17 Javascript
基于layPage插件实现两种分页方式浅析
2019/07/27 Javascript
Vue3.x源码调试的实现方法
2019/10/13 Javascript
Vue实现附件上传功能
2020/05/28 Javascript
在vue中使用防抖函数组件操作
2020/07/26 Javascript
vue-video-player视频播放器使用配置详解
2020/10/23 Javascript
python socket网络编程步骤详解(socket套接字使用)
2013/12/06 Python
如何使用pyinstaller打包32位的exe程序
2019/05/26 Python
Python识别快递条形码及Tesseract-OCR使用详解
2019/07/15 Python
Django Rest framework三种分页方式详解
2019/07/26 Python
python程序 创建多线程过程详解
2019/09/23 Python
python栈的基本定义与使用方法示例【初始化、赋值、入栈、出栈等】
2019/10/24 Python
pygame实现飞机大战
2020/03/11 Python
django创建超级用户时指定添加其它字段方式
2020/05/14 Python
英语专业应届生求职信范文
2013/11/15 职场文书
一年级家长会邀请函
2014/01/25 职场文书
知识竞赛活动方案
2014/02/18 职场文书
商场周年庆活动方案
2014/08/19 职场文书
党课培训心得体会
2014/09/02 职场文书
患者身份识别制度
2015/08/06 职场文书
Python实现滑雪小游戏
2021/09/25 Python
Python 绘制多因子柱状图
2022/05/11 Python