python类unescape()的实例源码

Utils.py 文件源码 项目:nzbget-dirwatch 作者: caronc 项目源码 文件源码 阅读 19 收藏 0 点赞 0 评论 0
def unescape_xml(content):
    """
    Escapes XML content into it's regular string value
    """

    if SAX_UNESCAPE:
        return unescape(content)
    return HTMLParser().unescape(content)
xbmcvkui.py 文件源码 项目:vkkodi 作者: VkKodi 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def PrepareString(str):
    return unescape(str, {"'": "'", "'" : "'", "'" : "'", """: '"'})
feedback.py 文件源码 项目:lianjia.alfredworkflow 作者: migege 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def get(self, unescape = False):
        ele_tree = ElementTree.Element('items')
        for item in self.items:
            ele_tree.append(item.getXMLElement())
        res = ElementTree.tostring(ele_tree) #! ????encoding='utf-8'????????????????alfred????
        if unescape:
            return saxutils.unescape(res)
        return res
utils.py 文件源码 项目:legal 作者: tompecina 项目源码 文件源码 阅读 19 收藏 0 点赞 0 评论 0
def xml_unescape(string):
    """
    Strip and XML-unescape 'string'.
    """

    return unescape(string.strip())
tests.py 文件源码 项目:autoupdate_blacklists 作者: elluscinia 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def upload_xml(self):
        start_time = time.time()
        f = open(self.file_name)
        domains = [domain for domain in f]
        f.close()
        domain_name = self.file_name + '_xml'
        rule_set = self.rule_name + '_XML'

        file_dom = (xmlStart % {'expGUID': str(uuid4()).upper()})
        for url in domains:
            file_dom += ('<fpc4:Str dt:dt="string">' + (url.replace('&', '&amp;')) + '</fpc4:Str>')
        file_dom += (xmlEnd % unescape(domain_name))

        dom = win32com.client.Dispatch('Msxml2.DOMDocument.3.0')
        dom.async = False
        dom.loadXML(file_dom)

        isa_array.RuleElements.DomainNameSets.Import(dom, 0)

        rule = isa_array.ArrayPolicy.PolicyRules.Item(rule_set)

        rule_sets = rule.AccessProperties.DestinationDomainNameSets

        rule_sets.Add(domain_name, 0)

        rule.Save()

        return time.time() - start_time
xmltools.py 文件源码 项目:ZServer 作者: zopefoundation 项目源码 文件源码 阅读 18 收藏 0 点赞 0 评论 0
def unescape(value, entities=None):
    _ent = unescape_entities
    if entities is not None:
        _ent = _ent.copy()
        _ent.update(entities)
    return _unescape(value, entities)


# utf-8 is hardcoded on OFS.PropertySheets as the expected
# encoding properties will be stored in. Optimally, we should use the
# same encoding as the 'default_encoding' property that is used for
# the ZMI.
flowables.py 文件源码 项目:deviation-manual 作者: DeviationTX 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def __init__(self, text, style, bulletText=None, caseSensitive=1, level=0,
                 snum=None, parent_id=None, node=None, section_header_depth=2):
        # Issue 114: need to convert "&amp;" to "&" and such.
        # Issue 140: need to make it plain text
        self.stext=re.sub(r'<[^>]*?>', '', unescape(text))
        self.stext = self.stext.strip()
        self.level = int(level)
        self.snum = snum
        self.parent_id=parent_id
        self.node=node
        self.section_header_depth = section_header_depth
        Paragraph.__init__(self, text, style, bulletText)
xpath.py 文件源码 项目:widgetastic.core 作者: RedHatQE 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def quote(s):
    """Quotes a string in such a way that it is usable inside XPath expressions."""
    return unescape(quoteattr(s))
categories.py 文件源码 项目:x-mario-center 作者: fossasia 项目源码 文件源码 阅读 50 收藏 0 点赞 0 评论 0
def _parse_menu_tag(self, item):
        name = None
        untranslated_name = None
        query = None
        icon = None
        only_unallocated = False
        dont_display = False
        flags = []
        subcategories = []
        sortmode = SortMethods.BY_ALPHABET
        item_limit = 0
        for element in item.getchildren():
            # ignore inline translations, we use gettext for this
            if (element.tag == "Name" and
                '{http://www.w3.org/XML/1998/namespace}lang' in
                element.attrib):
                continue
            if element.tag == "Name":
                untranslated_name = element.text
                # gettext/xml writes stuff from software-center.menu
                # out into the pot as escaped xml, so we need to escape
                # the name first, get the translation and unscape it again
                escaped_name = xml_escape(untranslated_name)
                name = xml_unescape(gettext.gettext(escaped_name))
            elif element.tag == "SCIcon":
                icon = element.text
            elif element.tag == 'Flags':
                flags = self._parse_flags_tag(element)
            elif element.tag == "Directory":
                l = self._parse_directory_tag(element)
                if l:
                    (untranslated_name, name, gettext_domain, icon) = l
            elif element.tag == "Include":
                query = self._parse_include_tag(element)
            elif element.tag == "OnlyUnallocated":
                only_unallocated = True
            elif element.tag == "SCDontDisplay":
                dont_display = True
            elif element.tag == "SCSortMode":
                sortmode = int(element.text)
                if not self._verify_supported_sort_mode(sortmode):
                    return None
            elif element.tag == "SCItemLimit":
                item_limit = int(element.text)
            elif element.tag == "Menu":
                subcat = self._parse_menu_tag(element)
                if subcat:
                    subcategories.append(subcat)
            else:
                LOG.warn("UNHANDLED tag in _parse_menu_tag: %s" % element.tag)

        if untranslated_name and query:
            return Category(untranslated_name, name, icon, query,
                only_unallocated, dont_display, flags, subcategories,
                sortmode, item_limit)
        else:
            LOG.warn("UNHANDLED entry: %s %s %s %s" % (name,
                                                       untranslated_name,
                                                       icon,
                                                       query))
        return None
categories.py 文件源码 项目:x-mario-center 作者: fossasia 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def _parse_menu_tag(self, item):
        name = None
        untranslated_name = None
        query = None
        icon = None
        only_unallocated = False
        dont_display = False
        flags = []
        subcategories = []
        sortmode = SortMethods.BY_ALPHABET
        item_limit = 0
        for element in item.getchildren():
            # ignore inline translations, we use gettext for this
            if (element.tag == "Name" and
                '{http://www.w3.org/XML/1998/namespace}lang' in
                element.attrib):
                continue
            if element.tag == "Name":
                untranslated_name = element.text
                # gettext/xml writes stuff from software-center.menu
                # out into the pot as escaped xml, so we need to escape
                # the name first, get the translation and unscape it again
                escaped_name = xml_escape(untranslated_name)
                name = xml_unescape(gettext.gettext(escaped_name))
            elif element.tag == "SCIcon":
                icon = element.text
            elif element.tag == 'Flags':
                flags = self._parse_flags_tag(element)
            elif element.tag == "Directory":
                l = self._parse_directory_tag(element)
                if l:
                    (untranslated_name, name, gettext_domain, icon) = l
            elif element.tag == "Include":
                query = self._parse_include_tag(element)
            elif element.tag == "OnlyUnallocated":
                only_unallocated = True
            elif element.tag == "SCDontDisplay":
                dont_display = True
            elif element.tag == "SCSortMode":
                sortmode = int(element.text)
                if not self._verify_supported_sort_mode(sortmode):
                    return None
            elif element.tag == "SCItemLimit":
                item_limit = int(element.text)
            elif element.tag == "Menu":
                subcat = self._parse_menu_tag(element)
                if subcat:
                    subcategories.append(subcat)
            else:
                LOG.warn("UNHANDLED tag in _parse_menu_tag: %s" % element.tag)

        if untranslated_name and query:
            return Category(untranslated_name, name, icon, query,
                only_unallocated, dont_display, flags, subcategories,
                sortmode, item_limit)
        else:
            LOG.warn("UNHANDLED entry: %s %s %s %s" % (name,
                                                       untranslated_name,
                                                       icon,
                                                       query))
        return None
plugin.py 文件源码 项目:enigma2-plugins 作者: opendreambox 项目源码 文件源码 阅读 32 收藏 0 点赞 0 评论 0
def hauptmenu(self,output):
        self.loadinginprogress = False
        trans = { '&szlig;' : 'ß' , '&auml;' : 'ä' , '&ouml;' : 'ö' , '&uuml;' : 'ü' , '&Auml;' : 'Ä', '&Ouml;' : 'Ö' , '&Uuml;' : 'Ü'}
        output= util.unescape(output,trans)

        if self.land == "de":
            startpos = output.find('<div id="navigation">')
            endpos = output.find('<li><a class="section-link" title="Unwetterwarnungen Europa"', startpos)
            bereich = output[startpos:endpos]
            a = findall(r'href=(?P<text>.*?)</a>',bereich)
            for x in a:
                x = x.replace('">',"#").replace('"',"").split('#')
                if not len(x) > 1:
                    break
                if x[0] == "index.html":
                    continue
                name = x[1]
                link = self.baseurl + x[0]
                self.menueintrag.append(name)
                self.link.append(link)
        else:
            self.menueintrag.append("Lagebericht")
            self.link.append(self.weatherreporturl)
            startpos = output.find('</ul><ul><ul id="level_3">')
            endpos = output.find('</ul></ul>', startpos)
            bereich = output[startpos:endpos]
            a = findall(r'href=(?P<text>.*?)</a>',bereich)
            for x in a:
                x = x.replace('">',"#").replace('"',"").split('#')
                if not len(x) > 1:
                    break
                if x[0] == "index.html":
                    continue
                name = x[1]
                link = self.baseurl + x[0]
                self.menueintrag.append(name)
                self.link.append(link)

        self["statuslabel"].setText("")
        self["hmenu"].l.setList(self.menueintrag)
        self["hmenu"].instance.moveSelectionTo(0)
        self.showThumbLand()
Timer.py 文件源码 项目:enigma2-plugins 作者: opendreambox 项目源码 文件源码 阅读 29 收藏 0 点赞 0 评论 0
def addTimerByEventID(self, param):
        print "[WebComponents.Timer] addTimerByEventID", param
        if param['sRef'] is None:
            return ( False, _("Missing Parameter: sRef") )
        if param['eventid'] is None:
            return ( False, _("Missing Parameter: eventid") )

        justplay = False
        if param['justplay'] is not None:
            if param['justplay'] == "1":
                justplay = True

        if not justplay and not config.misc.recording_allowed.value:
            return (False, _("Recording is currently disabled!"))

        location = preferredTimerPath()
        if 'dirname' in param and param['dirname']:
            location = param['dirname']

        tags = []
        if 'tags' in param and param['tags']:
            tags = unescape(param['tags']).split(' ')

        epgcache = eEPGCache.getInstance()
        event = epgcache.lookupEventId(eServiceReference(param['sRef']), int(param['eventid']))
        if event is None:
            return ( False, _("EventId not found") )

        (begin, end, name, description, eit) = parseEvent(event)

        timer = RecordTimerEntry(ServiceReference(param['sRef']), begin , end, name, description, eit, False, justplay, AFTEREVENT.AUTO, dirname=location, tags=tags)

        conflicts = self.recordtimer.record(timer)
        if conflicts is None:
            return ( True, _("Timer '%s' added") %(timer.name) )
        else:
            print "[WebComponents.Timer] editTimer conflicting Timers: %s" %(conflicts)
            msg = ""
            for timer in conflicts:
                msg = "%s / %s" %(msg, timer.name)

            return (False, _("Conflicting Timer(s) detected! %s") %(msg))


问题


面经


文章

微信
公众号

扫码关注公众号