Пример #1
0
    def j_page2text(cls, j_page):
        logger = FoxylibLogger.func_level2logger(cls.j_page2text, logging.DEBUG)
        j_responspan_list = jdown(j_page, ["responses"])
        if j_responspan_list is None:
            return None

        assert_true(j_responspan_list, j_page)

        j_response = l_singleton2obj(j_responspan_list)

        str_text = jdown(j_response, ["fullTextAnnotation", "text"])
        return str_text
Пример #2
0
    def _j_stats_jpaths2comprank(cls, j_stats, jpath_list):
        comprank_list = lfilter(
            is_not_none, map(lambda jpath: jdown(j_stats, jpath), jpath_list))
        if not comprank_list:
            return None

        return list2singleton(comprank_list)
Пример #3
0
    def tuple2pair(cls, t):
        logger = HenriqueLogger.func_level2logger(cls.tuple2pair, logging.DEBUG)

        def chatuser_uuid2channel_user(chatuser_uuid, alias=None):
            if not chatuser_uuid:
                return None

            row = ChatuserTable.uuid2row(chatuser_uuid)
            if not row:
                logger.debug({"chatuser_uuid":chatuser_uuid})
                return None

            channel_user = ChatuserTable.row2channel_user(row, alias=alias)
            return channel_user

        j_postgres = t[PortTradegoodStateTable.index_json()]
        sender_name = j_postgres.get("sender_name")

        created_at = DatetimeTool.fromisoformat(j_postgres["created_at"])

        port_name_en = PortTradegoodStateTable.tuple2port_name_en(t)
        port = cls.name_en2port(port_name_en)

        tradegood_name_en = PortTradegoodStateTable.tuple2tradegood_name_en(t)
        tradegood = cls.name_en2tradegood(tradegood_name_en)

        rate = PortTradegoodStateTable.tuple2rate(t)
        trend = PortTradegoodStateTable.tuple2trend(t)

        chatuser_uuid = PortTradegoodStateTable.tuple2chatuser_uuid(t)
        channel_user = chatuser_uuid2channel_user(chatuser_uuid, alias=sender_name)
        channel_user_code = ChannelUser.channel_user2codename(channel_user) if channel_user else None

        server_alias = str2lower(jdown(j_postgres, ["server", "name"]))
        # logger.debug({"server_alias":server_alias})

        server = Server.alias_lang2server(server_alias, "ko")
        assert_true(server,server_alias)

        marketprice = {MarketpriceDoc.Field.CREATED_AT: created_at,
                       MarketpriceDoc.Field.PORT: Port.port2codename(port),
                       MarketpriceDoc.Field.TRADEGOOD: Tradegood.tradegood2codename(tradegood),
                       MarketpriceDoc.Field.RATE: rate,
                       MarketpriceDoc.Field.TREND: trend,

                       MarketpriceDoc.Field.CHANNEL_USER: channel_user_code,
                       MarketpriceDoc.Field.SERVER: Server.server2codename(server),

                       }

        return marketprice, channel_user
Пример #4
0
                def tuple2j_doc(t, i):
                    j_postgres = t[PortTradegoodStateTable.index_json()]
                    sender_name = j_postgres.get("sender_name")

                    j_doc = {
                        MarkettrendDoc.Field.SERVER:
                        jdown(j_postgres, ["server", "name"]),
                        MarkettrendDoc.Field.CREATED_AT:
                        datetime.fromisoformat(j_postgres["created_at"]),
                        MarkettrendDoc.Field.PORT_ID:
                        MongoDBTool.doc2id(j_port_list[i]),
                        MarkettrendDoc.Field.TRADEGOOD_ID:
                        tradegood_id_list[i],
                        MarkettrendDoc.Field.RATE:
                        rate_list[i],
                        MarkettrendDoc.Field.TREND:
                        trend_list[i],
                    }

                    if sender_name:
                        j_doc[MarkettrendDoc.Field.SENDER_NAME] = sender_name

                    return j_doc
Пример #5
0
 def j_result2total_count(cls, j_result):
     return jdown(j_result, ["hits", "total", "value"])
Пример #6
0
 def j_result2j_hit_list(cls, j_result):
     j_hit_list = jdown(j_result, ["hits", "hits"])
     return j_hit_list
Пример #7
0
 def aggrname2j_bucket_list(cls, j_result, aggrname):
     return jdown(j_result, ["aggregations", aggrname, "buckets"])
Пример #8
0
 def j_hit2_id(cls, j_hit):
     return jdown(j_hit, ["_id"])
Пример #9
0
 def j_lang2name(cls, j, lang):
     return jdown(j, [cls.Field.NAME, lang])
Пример #10
0
 def lang2name(cls, lang):
     j_yaml = cls.j_yaml()
     return jdown(j_yaml, [cls.YAML.NAME, lang])
Пример #11
0
 def j_config2self_ref_config(cls, j_config):
     return jdown(j_config, [cls.Config.SELF_REF_CONFIG])