python 繁体转简体 全角转半角

pip install langconv

#! /usr/bin/env python
# coding:utf8
# Create your views here.
import sys
reload(sys)
sys.setdefaultencoding("utf-8")
from langconv.langconv import   *

def _prodesc_delsytle(htmlstr):
    try:
        htmlstr=htmlstr.replace(""",'"')
        htmlstr=htmlstr.replace("&",'&')
        htmlstr=htmlstr.replace("&lt;",'<')
        htmlstr=htmlstr.replace("&gt;",'>')
        htmlstr=htmlstr.replace("&nbsp;",' ')
        s=re.sub("<[^<>]+>",'',htmlstr)
        return s
    except:
        return  htmlstr

def _strQ2B(ustring):
    """全角转半角"""
    rstring = ""
    for uchar in ustring:
        inside_code=ord(uchar)
        if inside_code == 12288:                              #全角空格直接转换
            inside_code = 32
        elif (inside_code >= 65281 and inside_code <= 65374): #全角字符(除空格)根据关系转化
            inside_code -= 65248

        rstring += unichr(inside_code)
    return rstring
def _strQ2B(ustring):
    """全角转半角"""
    if "data:image/png;base64" in ustring or "data:image/gif;base64" in ustring or "data:image/jpeg;base64" in ustring or "data:image/x-icon;base64" in ustring:
        return "None none"
    ustring=ustring.replace(unichr(12288),unichr(32))
    ustring=re.sub(u"[\uff01-\uff5e]",lambda i:unichr(ord(i.group(0))-65248),ustring)
    return ustring
def content_handle(content):
    "处理一个Unicode字符串"
    # print "content----", type(content)
    content=u'%s'%content
    result=ConverterHandler("zh-hans")
    result=result.convert(content)  #繁体转简体
    result= result.replace(" ","" )  #去空格
    result=_strQ2B(result)    #全角转半角
    result=_prodesc_delsytle(result)     #去html标签
    return  result

b='''飛機在亞洲的上空飛翔
import re
</div>1949年6月16日,<a target=_blank href="/view/5368861.htm">
新政协</a>筹备会决定成立国旗、国徽图案初选委员会,同年7月14日至8月15日在
《<a target=_blank href="/view/38274.htm">人民日报</a>》
等报纸发表征求启事。1949年9月<a target=_blank href="/view/244325.htm">
中国人民政治协商会议第一届全体会议</a>期间,
初选委员会从收到的3012幅图案中选出38幅印发全体代表讨论。
经全体代表分组讨论后,9月25日晚,
<a target=_blank href="/view/1689.htm">毛泽东</a>
主席召开<a target=_blank href="/subview/4040/10938361.htm">国旗</a>、
<a target=_blank href="/view/21625.htm">国徽</a>、
<a target=_blank href="/subview/4572/5397002.htm">国歌</a>、
<a target=_blank href="/view/43238.htm">纪年</a>、
<a target=_blank href="/view/620056.htm">国都</a>协商座谈会。
在关于国旗的讨论中,会议研究决定去除原设计稿中意识形态浓厚,
且与苏联国旗相仿的镰刀斧头标志。最后形成以红色为底色,四小星拱卫大星的五星红旗方案。</div>
<div class="para" label-module="para">毛泽东指出,
五星红旗这个图案表现革命人民<a target=_blank href="/view/347689.htm">大团</a>
<a target=_blank href="/view/287677.htm">结</a>,
因此,又是团结,又是革命。<sup>[1]</sup><a class="sup-anchor" name="ref_[1]_9304">&nbsp;</a>
</div>'''
print content_handle(b)
>>
飞机在亚洲的上空飞翔
import re
1949年6月16日,新政协筹备会决定成立国旗、国徽图案初选委员会,同年7月14日至8月15日在《人民日报》
等报纸发表征求启事。1949年9月中国人民政治协商会议第一届全体会议期间,
初选委员会从收到的3012幅图案中选出38幅印发全体代表讨论。
经全体代表分组讨论后,9月25日晚,毛泽东主席召开国旗、国徽、国歌、纪年、国都协商座谈会。
在关于国旗的讨论中,会议研究决定去除原设计稿中意识形态浓厚,
且与苏联国旗相仿的镰刀斧头标志。最后形成以红色为底色,四小星拱卫大星的五星红旗方案。
毛泽东指出,五星红旗这个图案表现革命人民大团结,因此,又是团结,又是革命。[1]


你可能感兴趣的:(python 繁体转简体 全角转半角)