• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python errors.FormatterError类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中superdesk.errors.FormatterError的典型用法代码示例。如果您正苦于以下问题:Python FormatterError类的具体用法?Python FormatterError怎么用?Python FormatterError使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了FormatterError类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: format

    def format(self, article, subscriber):
        try:
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)

            ninjs = {
                '_id': article['_id'],
                'version': str(article['_current_version']),
                'type': self._get_type(article)
            }
            try:
                ninjs['byline'] = self._get_byline(article)
            except:
                pass
            for copy_property in self.direct_copy_properties:
                if copy_property in article:
                    ninjs[copy_property] = article[copy_property]

            if 'description' in article:
                ninjs['description_text'] = article['description']

            if article['type'] == 'composite':
                ninjs['associations'] = self._get_associations(article)

            return [(pub_seq_num, json.dumps(ninjs, default=json_serialize_datetime_objectId))]
        except Exception as ex:
            raise FormatterError.ninjsFormatterError(ex, subscriber)
开发者ID:oxcarh,项目名称:superdesk,代码行数:26,代码来源:ninjs_formatter.py


示例2: format

    def format(self, article, subscriber):
        """
        Formats the article as require by the subscriber
        :param dict article: article to be formatted
        :param dict subscriber: subscriber receiving the article
        :return: tuple (int, str) of publish sequence of the subscriber, formatted article as string
        """
        try:
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)
            body_html = article.get('body_html', '').strip('\r\n')
            soup = BeautifulSoup(body_html)
            for br in soup.find_all('br'):
                # remove the <br> tag
                br.replace_with(' {}'.format(br.get_text()))

            for p in soup.find_all('p'):
                # replace <p> tag with two carriage return
                p.replace_with('{}\r\n\r\n'.format(p.get_text()))

            article['body_text'] = soup.get_text()

            # get the first category and derive the locator
            category = next((iter(article.get('anpa_category', []))), None)
            if category:
                locator = LocatorMapper().map(article, category.get('qcode').upper())
                if locator:
                    article['place'] = [{'qcode': locator, 'name': locator}]

            return [(pub_seq_num, superdesk.json.dumps(article, default=json_serialize_datetime_objectId))]
        except Exception as ex:
            raise FormatterError.bulletinBuilderFormatterError(ex, subscriber)
开发者ID:ancafarcas,项目名称:superdesk,代码行数:31,代码来源:aap_bulletinbuilder_formatter.py


示例3: format

    def format(self, article, subscriber):
        try:
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)

            ninjs = {
                '_id': article['_id'],
                'version': str(article['_current_version']),
                'type': self._get_type(article)
            }
            try:
                ninjs['byline'] = self._get_byline(article)
            except:
                pass

            located = article.get('dateline', {}).get('located', {}).get('city')
            if located:
                ninjs['located'] = article.get('dateline', {}).get('located', {}).get('city', '')

            for copy_property in self.direct_copy_properties:
                if copy_property in article:
                    ninjs[copy_property] = article[copy_property]

            if 'description' in article:
                ninjs['description_text'] = article['description']

            if article[ITEM_TYPE] == CONTENT_TYPE.COMPOSITE:
                ninjs['associations'] = self._get_associations(article)

            if article.get(EMBARGO):
                ninjs['embargoed'] = article.get(EMBARGO).isoformat()

            return [(pub_seq_num, json.dumps(ninjs, default=json_serialize_datetime_objectId))]
        except Exception as ex:
            raise FormatterError.ninjsFormatterError(ex, subscriber)
开发者ID:chalkjockey,项目名称:superdesk,代码行数:34,代码来源:ninjs_formatter.py


示例4: format

    def format(self, article, subscriber):
        """
        Create article in NewsML1.2 format
        :param dict article:
        :param dict subscriber:
        :return [(int, str)]: return a List of tuples. A tuple consist of
            publish sequence number and formatted article string.
        :raises FormatterError: if the formatter fails to format an article
        """
        try:
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)

            newsml = etree.Element("NewsML")
            SubElement(newsml, "Catalog", {'Href': 'http://www.iptc.org/std/catalog/catalog.IptcMasterCatalog.xml'})
            news_envelope = SubElement(newsml, "NewsEnvelope")
            news_item = SubElement(newsml, "NewsItem")

            self._format_news_envelope(article, news_envelope, pub_seq_num)
            self._format_identification(article, news_item)
            self._format_news_management(article, news_item)
            self._format_news_component(article, news_item)

            return [(pub_seq_num, self.XML_ROOT + etree.tostring(newsml).decode('utf-8'))]
        except Exception as ex:
            raise FormatterError.newml12FormatterError(ex, subscriber)
开发者ID:ahilles107,项目名称:superdesk-core,代码行数:25,代码来源:newsml_1_2_formatter.py


示例5: format

    def format(self, article, subscriber, codes=None):
        """
        Create article in NewsML G2 format
        :param dict article:
        :param dict subscriber:
        :param list codes: selector codes
        :return [(int, str)]: return a List of tuples. A tuple consist of
            publish sequence number and formatted article string.
        :raises FormatterError: if the formatter fails to format an article
        """
        try:
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)
            is_package = self._is_package(article)
            self._message_attrib.update(self._debug_message_extra)
            news_message = etree.Element('newsMessage', attrib=self._message_attrib)
            self._format_header(article, news_message, pub_seq_num)
            item_set = self._format_item(news_message)
            if is_package:
                item = self._format_item_set(article, item_set, 'packageItem')
                self._format_groupset(article, item)
            elif article[ITEM_TYPE] in {CONTENT_TYPE.PICTURE, CONTENT_TYPE.AUDIO, CONTENT_TYPE.VIDEO}:
                item = self._format_item_set(article, item_set, 'newsItem')
                self._format_contentset(article, item)
            else:
                nitfFormater = NITFFormatter()
                nitf = nitfFormater.get_nitf(article, subscriber, pub_seq_num)
                newsItem = self._format_item_set(article, item_set, 'newsItem')
                self._format_content(article, newsItem, nitf)

            return [(pub_seq_num, self.XML_ROOT + etree.tostring(news_message).decode('utf-8'))]
        except Exception as ex:
            raise FormatterError.newmsmlG2FormatterError(ex, subscriber)
开发者ID:liveblog,项目名称:superdesk-core,代码行数:32,代码来源:newsml_g2_formatter.py


示例6: format

    def format(self, article, subscriber, codes=None):
        """
        Create article in NewsML1.2 format

        :param dict article:
        :param dict subscriber:
        :param list codes:
        :return [(int, str)]: return a List of tuples. A tuple consist of
            publish sequence number and formatted article string.
        :raises FormatterError: if the formatter fails to format an article
        """
        try:
            formatted_article = deepcopy(article)
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)
            self.now = utcnow()
            self.string_now = self.now.strftime('%Y%m%dT%H%M%S+0000')

            newsml = etree.Element("NewsML", {'Version': '1.2'})
            SubElement(newsml, "Catalog", {
                'Href': 'http://about.reuters.com/newsml/vocabulary/catalog-reuters-3rdParty-master_catalog.xml'})
            news_envelope = SubElement(newsml, "NewsEnvelope")
            news_item = SubElement(newsml, "NewsItem")

            self._format_news_envelope(formatted_article, news_envelope, pub_seq_num)
            self._format_identification(formatted_article, news_item)
            self._format_news_management(formatted_article, news_item)
            self._format_news_component(formatted_article, news_item)

            return [(pub_seq_num, self.XML_ROOT + etree.tostring(newsml).decode('utf-8'))]
        except Exception as ex:
            raise FormatterError.newml12FormatterError(ex, subscriber)
开发者ID:mdhaman,项目名称:superdesk-aap,代码行数:31,代码来源:reuters_newsml_1_2_formatter.py


示例7: format

    def format(self, article, subscriber):
        try:
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)

            ninjs = {
                '_id': article['_id'],
                'version': str(article.get(config.VERSION, 1)),
                'type': self._get_type(article)
            }

            try:
                ninjs['byline'] = self._get_byline(article)
            except:
                pass

            located = article.get('dateline', {}).get('located', {})
            if located:
                ninjs['located'] = located.get('city', '')

            for copy_property in self.direct_copy_properties:
                if article.get(copy_property) is not None:
                    ninjs[copy_property] = article[copy_property]

            if article.get('body_html'):
                ninjs['body_html'] = self.append_body_footer(article)

            if article.get('description'):
                ninjs['description_html'] = self.append_body_footer(article)

            if article[ITEM_TYPE] == CONTENT_TYPE.COMPOSITE:
                ninjs['associations'] = self._get_associations(article)
            elif article.get('associations', {}):
                ninjs['associations'] = self._format_related(article, subscriber)

            if article.get(EMBARGO):
                ninjs['embargoed'] = article.get(EMBARGO).isoformat()

            if article.get('priority'):
                ninjs['priority'] = article['priority']
            else:
                ninjs['priority'] = 5

            if article.get('subject'):
                ninjs['subject'] = self._get_subject(article)

            if article.get('anpa_category'):
                ninjs['service'] = self._get_service(article)

            if article.get('renditions'):
                ninjs['renditions'] = self._get_renditions(article)

            if article.get('abstract'):
                ninjs['description_text'] = article.get('abstract')
            elif article.get('description_text'):
                ninjs['description_text'] = article.get('description_text')

            return [(pub_seq_num, json.dumps(ninjs, default=json_serialize_datetime_objectId))]
        except Exception as ex:
            raise FormatterError.ninjsFormatterError(ex, subscriber)
开发者ID:ahilles107,项目名称:superdesk-core,代码行数:59,代码来源:ninjs_formatter.py


示例8: format

    def format(self, article, subscriber, codes=None):
        try:
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)

            nitf = self.get_nitf(article, subscriber, pub_seq_num)
            return [(pub_seq_num, self.XML_ROOT + etree.tostring(nitf).decode('utf-8'))]
        except Exception as ex:
            raise FormatterError.nitfFormatterError(ex, subscriber)
开发者ID:liveblog,项目名称:superdesk-core,代码行数:8,代码来源:nitf_formatter.py


示例9: format

    def format(self, article, subscriber, codes=None):
        try:
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)

            ninjs = self._transform_to_ninjs(article, subscriber)
            return [(pub_seq_num, json.dumps(ninjs, default=json_serialize_datetime_objectId))]
        except Exception as ex:
            raise FormatterError.ninjsFormatterError(ex, subscriber)
开发者ID:hlmnrmr,项目名称:superdesk-core,代码行数:8,代码来源:ninjs_formatter.py


示例10: format

    def format(self, article, subscriber, codes=None):
        try:
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)

            nitf = self.get_nitf(article, subscriber, pub_seq_num)
            return [{'published_seq_num': pub_seq_num,
                     'formatted_item': etree.tostring(nitf, encoding='ascii').decode('ascii'),
                    'item_encoding': 'ascii'}]
        except Exception as ex:
            raise FormatterError.nitfFormatterError(ex, subscriber)
开发者ID:marwoodandrew,项目名称:superdesk-aap,代码行数:10,代码来源:aap_nitf_formatter.py


示例11: format

    def format(self, article, destination, selector_codes=None):
        try:

            pub_seq_num = superdesk.get_resource_service('output_channels').generate_sequence_number(destination)

            nitf = self.get_nitf(article, destination, pub_seq_num)

            return pub_seq_num, self.XML_ROOT + etree.tostring(nitf).decode('utf-8')
        except Exception as ex:
            raise FormatterError.nitfFormatterError(ex, destination)
开发者ID:Flowdeeps,项目名称:superdesk-1,代码行数:10,代码来源:nitf_formatter.py


示例12: format

    def format(self, article, subscriber):
        """
        Formats the article as require by the subscriber
        :param dict article: article to be formatted
        :param dict subscriber: subscriber receiving the article
        :return: tuple (int, str) of publish sequence of the subscriber, formatted article as string
        """
        try:

            article['slugline'] = self.append_legal(article=article, truncate=True)
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)
            body_html = self.append_body_footer(article).strip('\r\n')
            soup = BeautifulSoup(body_html, 'html.parser')

            if not len(soup.find_all('p')):
                for br in soup.find_all('br'):
                    # remove the <br> tag
                    br.replace_with(' {}'.format(br.get_text()))

            for p in soup.find_all('p'):
                # replace <p> tag with two carriage return
                for br in p.find_all('br'):
                    # remove the <br> tag
                    br.replace_with(' {}'.format(br.get_text()))

                para_text = p.get_text().strip()
                if para_text != '':
                    p.replace_with('{}\r\n\r\n'.format(para_text))
                else:
                    p.replace_with('')

            article['body_text'] = re.sub(' +', ' ', soup.get_text())
            # get the first category and derive the locator
            category = next((iter(article.get('anpa_category', []))), None)
            if category:
                locator = LocatorMapper().map(article, category.get('qcode').upper())
                if locator:
                    article['place'] = [{'qcode': locator, 'name': locator}]

                article['first_category'] = category
                article['first_subject'] = set_subject(category, article)

            odbc_item = {
                'id': article.get(config.ID_FIELD),
                'version': article.get(config.VERSION),
                ITEM_TYPE: article.get(ITEM_TYPE),
                PACKAGE_TYPE: article.get(PACKAGE_TYPE, ''),
                'headline': article.get('headline', '').replace('\'', '\'\''),
                'slugline': article.get('slugline', '').replace('\'', '\'\''),
                'data': superdesk.json.dumps(article, default=json_serialize_datetime_objectId).replace('\'', '\'\'')
            }

            return [(pub_seq_num, json.dumps(odbc_item, default=json_serialize_datetime_objectId))]
        except Exception as ex:
            raise FormatterError.bulletinBuilderFormatterError(ex, subscriber)
开发者ID:MiczFlor,项目名称:superdesk-core,代码行数:55,代码来源:aap_bulletinbuilder_formatter.py


示例13: format

 def format(self, article, subscriber, codes=None):
     try:
         pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)
         nitf = self.get_nitf(article, subscriber, pub_seq_num)
         strip_elements(nitf, 'body.end')
         nitf_string = etree.tostring(nitf, encoding='utf-8').decode()
         headers = ['<?xml version=\"1.0\" encoding=\"UTF-8\"?>',
                    '<!-- <!DOCTYPE nitf SYSTEM \"./nitf-3-3.dtd\"> -->']
         return [{
             'published_seq_num': pub_seq_num,
             'formatted_item': '{}\r\n{}'.format("\r\n".join(headers), nitf_string).
                 replace('&#13;\n', self.line_ender)}]
     except Exception as ex:
         raise FormatterError.nitfFormatterError(ex, subscriber)
开发者ID:mdhaman,项目名称:superdesk-aap,代码行数:14,代码来源:iress_nitf_formatter.py


示例14: format

 def format(self, article, destination):
     try:
         nitf = etree.Element("nitf")
         head = SubElement(nitf, "head")
         body = SubElement(nitf, "body")
         body_head = SubElement(body, "body.head")
         body_content = SubElement(body, "body.content")
         body_content.text = article['body_html']
         body_end = SubElement(body, "body.end")
         etree.Element('doc-id', attrib={'id-string': article['guid']})
         self.__format_head(article, head)
         self.__format_body_head(article, body_head)
         self.__format_body_end(article, body_end)
         return self.XML_ROOT + str(etree.tostring(nitf))
     except Exception as ex:
         raise FormatterError.nitfFormatterError(ex, destination)
开发者ID:girgen79,项目名称:superdesk,代码行数:16,代码来源:nitf_formatter.py


示例15: format

    def format(self, article, destination, selector_codes=None):
        try:
            pub_seq_num = superdesk.get_resource_service('output_channels').generate_sequence_number(destination)

            nitfFormater = NITFFormatter()
            nitf = nitfFormater.get_nitf(article, destination, pub_seq_num)

            self._message_attrib.update(self._debug_message_extra)
            newsMessage = etree.Element('newsMessage', attrib=self._message_attrib)
            self._format_header(article, newsMessage, pub_seq_num)
            itemSet = self._format_item(newsMessage)
            if article['type'] == 'text' or article['type'] == 'preformatted':
                self._format_newsitem(article, itemSet, nitf)

            return pub_seq_num, self.XML_ROOT + etree.tostring(newsMessage).decode('utf-8')
        except Exception as ex:
            raise FormatterError.newmsmlG2FormatterError(ex, destination)
开发者ID:Flowdeeps,项目名称:superdesk-1,代码行数:17,代码来源:newsml_g2_formatter.py


示例16: format

    def format(self, article, subscriber):
        try:
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)

            newsml = etree.Element("NewsML")
            SubElement(newsml, "Catalog", {'Href': 'http://www.aap.com.au/xml-res/aap-master-catalog.xml'})
            news_envelope = SubElement(newsml, "NewsEnvelope")
            news_item = SubElement(newsml, "NewsItem")

            self._format_news_envelope(article, news_envelope, pub_seq_num)
            self._format_identification(article, news_item)
            self._format_news_management(article, news_item)
            self._format_news_component(article, news_item)

            return [(pub_seq_num, self.XML_ROOT + etree.tostring(newsml).decode('utf-8'))]
        except Exception as ex:
            raise FormatterError.newml12FormatterError(ex, subscriber)
开发者ID:oxcarh,项目名称:superdesk,代码行数:17,代码来源:newsml_1_2_formatter.py


示例17: format

    def format(self, article, subscriber):
        try:
            pub_seq_num = superdesk.get_resource_service("subscribers").generate_sequence_number(subscriber)
            body_html = article.get("body_html", "").strip("\r\n")
            soup = BeautifulSoup(body_html)
            for br in soup.find_all("br"):
                # remove the <br> tag
                br.replace_with(" {}".format(br.get_text()))

            for p in soup.find_all("p"):
                # replace <p> tag with two carriage return
                p.replace_with("{}\r\n\r\n".format(p.get_text()))

            article["body_text"] = soup.get_text()

            return [(pub_seq_num, superdesk.json.dumps(article, default=json_serialize_datetime_objectId))]
        except Exception as ex:
            raise FormatterError.bulletinBuilderFormatterError(ex, subscriber)
开发者ID:oxcarh,项目名称:superdesk,代码行数:18,代码来源:aap_bulletinbuilder_formatter.py


示例18: format

    def format(self, article, destination, selector_codes=None):
        try:

            pub_seq_num = superdesk.get_resource_service("output_channels").generate_sequence_number(destination)

            newsml = etree.Element("NewsML")
            SubElement(newsml, "Catalog", {"Href": "http://www.aap.com.au/xml-res/aap-master-catalog.xml"})
            news_envelope = SubElement(newsml, "NewsEnvelope")
            news_item = SubElement(newsml, "NewsItem")

            self._format_news_envelope(article, news_envelope, pub_seq_num)
            self._format_identification(article, news_item)
            self._format_news_management(article, news_item)
            self._format_news_component(article, news_item)

            return pub_seq_num, self.XML_ROOT + etree.tostring(newsml).decode("utf-8")
        except Exception as ex:
            raise FormatterError.newml12FormatterError(ex, destination)
开发者ID:Flowdeeps,项目名称:superdesk-1,代码行数:18,代码来源:newsml_1_2_formatter.py


示例19: format

    def format(self, article, subscriber, codes=None):
        try:
            pub_seq_num = superdesk.get_resource_service('subscribers').generate_sequence_number(subscriber)

            ninjs = self._transform_to_ninjs(article, subscriber)

            # if the article has an abstract then the description text has been over written by the abstract
            if article.get('abstract'):
                # if it is a picture then put it back
                if article.get('type') == 'picture':
                    ninjs['description_text'] = article.get('description_text', '')

            media = article.get('associations', {}).get('featuremedia')
            ninjs_media = article.get('associations', {}).get('featuremedia')
            if media and media.get('type') == 'picture':
                ninjs_media['description_text'] = media.get('description_text')

            return [(pub_seq_num, json.dumps(ninjs, default=json_serialize_datetime_objectId))]
        except Exception as ex:
            raise FormatterError.ninjsFormatterError(ex, subscriber)
开发者ID:mdhaman,项目名称:superdesk-aap,代码行数:20,代码来源:aap_ninjs_formatter.py


示例20: format

    def format(self, article, destination, selector_codes=None):
        try:
            pub_seq_num = superdesk.get_resource_service('output_channels').generate_sequence_number(destination)

            ninjs = {}
            ninjs['_id'] = article['_id']
            ninjs['version'] = str(article['version'])
            ninjs['type'] = self._get_type(article)
            try:
                ninjs['byline'] = self._get_byline(article)
            except:
                pass
            for copy_property in self.direct_copy_properties:
                if copy_property in article:
                    ninjs[copy_property] = article[copy_property]
            if article['type'] == 'composite':
                article['associations'] = self._get_associations(article)

            return pub_seq_num, json.dumps(ninjs, default=json_util.default)
        except Exception as ex:
            raise FormatterError.ninjsFormatterError(ex, destination)
开发者ID:Flowdeeps,项目名称:superdesk-1,代码行数:21,代码来源:ninjs_formatter.py



注:本文中的superdesk.errors.FormatterError类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python errors.IngestApiError类代码示例发布时间:2022-05-27
下一篇:
Python activity.add_activity函数代码示例发布时间:2022-05-27
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap