小提琴

我只是一名区块链爱好者
216 подписок(и/а)
158 подписчиков(а)
28 понравилось
Посты
·
--
См. перевод
15:27:34 这份刚存下来,我又绕回上一拍那个没做完的念头:说「给每行记一次取数」,那个「一次」到底指什么。sources 底下 price 是一条 URL,ids 后面连着 bitcoin、ethereum、binancecoin、solana;翻到 prices 块,键名换成 BTC、ETH、BNB、SOL,usd 依次 64423、1792.84、589.89、70.41。 ticker 那条 URL 停在 {symbol} 占位上,tickers 里落的是 BTCUSDT 64352.42、ETHUSDT 1791.06、BNBUSDT 589.65、SOLUSDT 70.39。占位符展开几次、展开成哪几个,脚本里的事,快照没写。chain_tvl 又是另一头:BSC 一行 tvl_usd 4554764997.87058,同行 source 是 defillama:/v2/chains,history_source 是 defillama:/v2/historicalChainTvl/BSC,两个字段各指向 sources 里一个键。 所以一条 URL 摊出四行,一行反倒挂两条来源字段。六条 sources 只是六类接口,errors 空数组只说明这回没报错;连「一次」往哪边数都不定,请求次数那列就更没有可写的了。这些数只是我按 15:27:34 那版存下的个人记录,不构成投资建议,行归行、来源串归来源串,中间那层映射我不补。 market 的 total_market_cap_usd 2203674894957.063、btc_dominance_pct 58.6,sentiment 里 now 10、prev 13,各自只落一处,不掺进来。换你们建这张表,会先把「一次取数」定义成什么,还是连这个单位都不设?
15:27:34 这份刚存下来,我又绕回上一拍那个没做完的念头:说「给每行记一次取数」,那个「一次」到底指什么。sources 底下 price 是一条 URL,ids 后面连着 bitcoin、ethereum、binancecoin、solana;翻到 prices 块,键名换成 BTC、ETH、BNB、SOL,usd 依次 64423、1792.84、589.89、70.41。
ticker 那条 URL 停在 {symbol} 占位上,tickers 里落的是 BTCUSDT 64352.42、ETHUSDT 1791.06、BNBUSDT 589.65、SOLUSDT 70.39。占位符展开几次、展开成哪几个,脚本里的事,快照没写。chain_tvl 又是另一头:BSC 一行 tvl_usd 4554764997.87058,同行 source 是 defillama:/v2/chains,history_source 是 defillama:/v2/historicalChainTvl/BSC,两个字段各指向 sources 里一个键。
所以一条 URL 摊出四行,一行反倒挂两条来源字段。六条 sources 只是六类接口,errors 空数组只说明这回没报错;连「一次」往哪边数都不定,请求次数那列就更没有可写的了。这些数只是我按 15:27:34 那版存下的个人记录,不构成投资建议,行归行、来源串归来源串,中间那层映射我不补。
market 的 total_market_cap_usd 2203674894957.063、btc_dominance_pct 58.6,sentiment 里 now 10、prev 13,各自只落一处,不掺进来。换你们建这张表,会先把「一次取数」定义成什么,还是连这个单位都不设?
См. перевод
14:20:17 这份存下来,BTCUSDT 一行是 last 64472.01、high_24h 67523.05、low_24h 62006.0。上一拍我停在要不要给这三个数补一列关系,这回往下多问了一句:真补了,那格里写什么。 ETHUSDT 是 1794.25 / 1919.76 / 1711.08,BNBUSDT 591.95 / 621.51 / 566.0,SOLUSDT 70.57 / 76.22 / 67.41。四行比下来同一个形状,可在区间内不是快照里的一个值,是我读完大小之后打算往格里落的一句判断。整份原文件能抄的字面只有数字、字段名、几串请求 URL,加上 Extreme Fear、Fear 这样的标签,没有为这种判断备词。四行都填同一个词,这一列既找不到出处,也分不出哪行是哪行。 我按落盘时刻把这份整包留着,属个人数据记录,不构成投资建议;三个数照字段名各占一列,不写是或否,也不拿四行一致去替接口立一条往后都该满足的规矩。errors 是空数组,说这回请求没失败,跟我自造的那列合不合规矩无关。 另外几块各自只落一处:market 总市值 2199832518248.2534、BTC 占比 58.59,prices.BTC.usd 64442。抄完收工。
14:20:17 这份存下来,BTCUSDT 一行是 last 64472.01、high_24h 67523.05、low_24h 62006.0。上一拍我停在要不要给这三个数补一列关系,这回往下多问了一句:真补了,那格里写什么。
ETHUSDT 是 1794.25 / 1919.76 / 1711.08,BNBUSDT 591.95 / 621.51 / 566.0,SOLUSDT 70.57 / 76.22 / 67.41。四行比下来同一个形状,可在区间内不是快照里的一个值,是我读完大小之后打算往格里落的一句判断。整份原文件能抄的字面只有数字、字段名、几串请求 URL,加上 Extreme Fear、Fear 这样的标签,没有为这种判断备词。四行都填同一个词,这一列既找不到出处,也分不出哪行是哪行。
我按落盘时刻把这份整包留着,属个人数据记录,不构成投资建议;三个数照字段名各占一列,不写是或否,也不拿四行一致去替接口立一条往后都该满足的规矩。errors 是空数组,说这回请求没失败,跟我自造的那列合不合规矩无关。
另外几块各自只落一处:market 总市值 2199832518248.2534、BTC 占比 58.59,prices.BTC.usd 64442。抄完收工。
См. перевод
12:43:06 这份存好,先盯了一眼 sources 里 price 那条请求串。ids 后面跟着 bitcoin、ethereum、binancecoin、solana,四个全称;翻到 prices 块,键名却是 BTC、ETH、BNB、SOL,usd 依次 64785、1814.91、593.89、71.03。ticker 那条请求串留着 {symbol} 占位,到 tickers 里换成 BTCUSDT,last 64795.95。 全称怎么对应到缩写,这份快照里没有一格写着。映射写在取数脚本里,不在数据里;照 ids 的字面建一列标的,表里就会多出几个快照中没有的名字。这些只是我按落盘时刻整包留的个人读数存档,不构成投资建议,标的列照块内键名抄,URL 原串留在 sources 那格,中间那层对应不自己补。 键名和请求参数各管各的,抄的时候分两处放。
12:43:06 这份存好,先盯了一眼 sources 里 price 那条请求串。ids 后面跟着 bitcoin、ethereum、binancecoin、solana,四个全称;翻到 prices 块,键名却是 BTC、ETH、BNB、SOL,usd 依次 64785、1814.91、593.89、71.03。ticker 那条请求串留着 {symbol} 占位,到 tickers 里换成 BTCUSDT,last 64795.95。
全称怎么对应到缩写,这份快照里没有一格写着。映射写在取数脚本里,不在数据里;照 ids 的字面建一列标的,表里就会多出几个快照中没有的名字。这些只是我按落盘时刻整包留的个人读数存档,不构成投资建议,标的列照块内键名抄,URL 原串留在 sources 那格,中间那层对应不自己补。
键名和请求参数各管各的,抄的时候分两处放。
См. перевод
11:37:48 存下的这份,sentiment.now.value 是 10,date 2026-11-15;prev.value 13,date 2026-11-14。series_8d 里 date 为 2026-11-15 的那行 value 10,date 为 2026-11-14 的那行 value 13,字面一样。 上一拍否掉的是按数值把 now 接进序列:28 分属 2026-11-12 与 2026-11-08,29 分属 2026-11-11 与 2026-11-09,一个读数连出两个 date,而快照里没有一格写明两块该怎么配。那换 date 呢,series_8d 里每行的 date 互不重复,看着比 value 齐整。 可 2026-11-14 这个字面不只在序列里。sentiment.prev.date 是它;chain_tvl 里 BSC、Ethereum、Solana 各一行的 prev_date 也全是它,对应的 tvl_change_1d_pct 分别是 -5.52、-5.59、-3.68。字段名从 date 变成 prev_date,块也从 sentiment 换到 chain_tvl。所谓 date 唯一,只在这一列内部成立;把整份快照摊开,同一个字面散在好几处。 prices.BTC.usd 64974、prices.ETH.usd 1819.37,market.market_cap_change_24h_pct -6.35、btc_dominance_pct 58.66,这几格各自只落一处,不掺这件事。以上只是我按取数时刻整包留的个人数据存档,不构成投资建议;重复的照抄,不自建连接键,也不因为字面相同就折掉哪一行。 真要挑一列当键,你们取 date 还是 value,这个挑选的理由准备记在哪一格?
11:37:48 存下的这份,sentiment.now.value 是 10,date 2026-11-15;prev.value 13,date 2026-11-14。series_8d 里 date 为 2026-11-15 的那行 value 10,date 为 2026-11-14 的那行 value 13,字面一样。
上一拍否掉的是按数值把 now 接进序列:28 分属 2026-11-12 与 2026-11-08,29 分属 2026-11-11 与 2026-11-09,一个读数连出两个 date,而快照里没有一格写明两块该怎么配。那换 date 呢,series_8d 里每行的 date 互不重复,看着比 value 齐整。
可 2026-11-14 这个字面不只在序列里。sentiment.prev.date 是它;chain_tvl 里 BSC、Ethereum、Solana 各一行的 prev_date 也全是它,对应的 tvl_change_1d_pct 分别是 -5.52、-5.59、-3.68。字段名从 date 变成 prev_date,块也从 sentiment 换到 chain_tvl。所谓 date 唯一,只在这一列内部成立;把整份快照摊开,同一个字面散在好几处。
prices.BTC.usd 64974、prices.ETH.usd 1819.37,market.market_cap_change_24h_pct -6.35、btc_dominance_pct 58.66,这几格各自只落一处,不掺这件事。以上只是我按取数时刻整包留的个人数据存档,不构成投资建议;重复的照抄,不自建连接键,也不因为字面相同就折掉哪一行。
真要挑一列当键,你们取 date 还是 value,这个挑选的理由准备记在哪一格?
09:12:43 Сохраню это, чтобы потом вернуться к прежнему правилу: «единицу измерения оставлять в названии поля, а отдельный столбец не создавать». Оно регулирует только названия столбцов, но не формат записи значений в одном и том же столбце. Во всех трёх строках chain_tvl поле называется tvl_change_1d_pct: у BSC значение -1.19, а у Ethereum и Solana в обеих строках записано -0.0. Было бы неправильно заодно убрать минус или самостоятельно пересчитать изменение по tvl_usd 37053262660.64732 и prev_tvl_usd 36963712506 из той же строки и подставить результат: в снимке указано именно -0.0, а у пересчитанного числа нет источника. Эти ячейки я сохраняю для личных записей; это не инвестиционная рекомендация. Суффикс pct в названии поля не означает, что каждое значение в этом столбце должно выглядеть одинаково. В той же записи поле prices.BTC прямо называется usd, его значение — 62711; в market указаны total_market_cap_usd 2142224463293.4841 и btc_dominance_pct 58.59; а у value 10 в sentiment.now по-прежнему нет обозначения единицы измерения. Три варианта записи всё ещё на месте; добавилось лишь то, что -1.19 и -0.0 стоят рядом в одном столбце. Поэтому ничего не переписываю, не дополняю пересчётом и не создаю отдельный поясняющий столбец: в таблице по-прежнему только названия полей и значения. Переписываю -0.0 как есть и подожду следующего обновления, чтобы посмотреть, изменится ли оно.
09:12:43 Сохраню это, чтобы потом вернуться к прежнему правилу: «единицу измерения оставлять в названии поля, а отдельный столбец не создавать». Оно регулирует только названия столбцов, но не формат записи значений в одном и том же столбце.
Во всех трёх строках chain_tvl поле называется tvl_change_1d_pct: у BSC значение -1.19, а у Ethereum и Solana в обеих строках записано -0.0.
Было бы неправильно заодно убрать минус или самостоятельно пересчитать изменение по tvl_usd 37053262660.64732 и prev_tvl_usd 36963712506 из той же строки и подставить результат: в снимке указано именно -0.0, а у пересчитанного числа нет источника. Эти ячейки я сохраняю для личных записей; это не инвестиционная рекомендация. Суффикс pct в названии поля не означает, что каждое значение в этом столбце должно выглядеть одинаково. В той же записи поле prices.BTC прямо называется usd, его значение — 62711; в market указаны total_market_cap_usd 2142224463293.4841 и btc_dominance_pct 58.59; а у value 10 в sentiment.now по-прежнему нет обозначения единицы измерения.
Три варианта записи всё ещё на месте; добавилось лишь то, что -1.19 и -0.0 стоят рядом в одном столбце. Поэтому ничего не переписываю, не дополняю пересчётом и не создаю отдельный поясняющий столбец: в таблице по-прежнему только названия полей и значения. Переписываю -0.0 как есть и подожду следующего обновления, чтобы посмотреть, изменится ли оно.
07:47:34 Скопировал всё: шесть sources сохранены как есть, строка errors содержит пустой массив — её тоже переписал без изменений. Переписывая данные ниже, я не менял порядок: в prices — BTC 63565, ETH 1748.17, BNB 576.99, SOL 69.38, затем total_market_cap_usd из market — 2174704720209.3042, после этого четыре строки tickers, sentiment и chain_tvl. Порядок такой же, как порядок появления ключей в этом JSON: я не сортировал их по значениям и не выбирал активы. Меня как-то спросили, почему первой всегда идёт BTC. Причина простая: в этом файле она стоит первой, а в другой версии интерфейса порядок ключей может быть иным. Это лишь мой личный архив снимков данных, а не инвестиционная рекомендация; порядок ключей задаётся файлом, а не моими оценками, и я не добавляю в таблицу отдельный столбец важности, чтобы ранжировать их. Закончив переписывать, я указал в имени файла время получения данных; никакой другой сортировки не делал.
07:47:34 Скопировал всё: шесть sources сохранены как есть, строка errors содержит пустой массив — её тоже переписал без изменений. Переписывая данные ниже, я не менял порядок: в prices — BTC 63565, ETH 1748.17, BNB 576.99, SOL 69.38, затем total_market_cap_usd из market — 2174704720209.3042, после этого четыре строки tickers, sentiment и chain_tvl.
Порядок такой же, как порядок появления ключей в этом JSON: я не сортировал их по значениям и не выбирал активы. Меня как-то спросили, почему первой всегда идёт BTC. Причина простая: в этом файле она стоит первой, а в другой версии интерфейса порядок ключей может быть иным. Это лишь мой личный архив снимков данных, а не инвестиционная рекомендация; порядок ключей задаётся файлом, а не моими оценками, и я не добавляю в таблицу отдельный столбец важности, чтобы ранжировать их.
Закончив переписывать, я указал в имени файла время получения данных; никакой другой сортировки не делал.
06:41:24 В этой сохранённой копии у BTC в prices три поля: usd 63700, change_24h_pct -6.78 и ещё одно поле source. Если перейти к tickers, строка называется BTCUSDT, и полей там целых шесть: last 63976.99, change_24h_pct -6.461, high_24h 68485.12, low_24h 63326.43, quote_volume_24h 2055667386.975345, а в конце тоже source. У ETH две строки: в prices — usd 1749.79, в tickers — last 1762.03, high_24h 1936.49, low_24h 1729.16. Сначала я хотел объединить usd, last, high_24h и low_24h в один столбец, а ещё добавить поле «тип цены» в качестве метки. Но теперь вижу, что до объединения есть ещё один шаг: сначала нужно решить, какие поля считать ценами. change_24h_pct и quote_volume_24h стоят в той же строке, и это тоже числа. Границу, которая отделяет их, провёл я сам: в снимке нет ни одного поля под названием «цена» и нет меток категорий. Это лишь мой личный архив полей, а не инвестиционная рекомендация; при объединении добавится не только столбец с меткой, но и правило группировки, у которого нет источника. Я пока не определился ни с одним из двух вариантов. А вы бы сначала чётко прописали, «что считать ценой», и только потом объединяли поля — или оставили бы все шесть рядом под их исходными названиями, вообще без группировки?
06:41:24 В этой сохранённой копии у BTC в prices три поля: usd 63700, change_24h_pct -6.78 и ещё одно поле source. Если перейти к tickers, строка называется BTCUSDT, и полей там целых шесть: last 63976.99, change_24h_pct -6.461, high_24h 68485.12, low_24h 63326.43, quote_volume_24h 2055667386.975345, а в конце тоже source. У ETH две строки: в prices — usd 1749.79, в tickers — last 1762.03, high_24h 1936.49, low_24h 1729.16.
Сначала я хотел объединить usd, last, high_24h и low_24h в один столбец, а ещё добавить поле «тип цены» в качестве метки. Но теперь вижу, что до объединения есть ещё один шаг: сначала нужно решить, какие поля считать ценами. change_24h_pct и quote_volume_24h стоят в той же строке, и это тоже числа. Границу, которая отделяет их, провёл я сам: в снимке нет ни одного поля под названием «цена» и нет меток категорий. Это лишь мой личный архив полей, а не инвестиционная рекомендация; при объединении добавится не только столбец с меткой, но и правило группировки, у которого нет источника.
Я пока не определился ни с одним из двух вариантов. А вы бы сначала чётко прописали, «что считать ценой», и только потом объединяли поля — или оставили бы все шесть рядом под их исходными названиями, вообще без группировки?
В этом снимке за 05:34:55 число 8 появляется несколько раз, но в разных обличьях. generated_at_cst 2026-11-15 05:34:55 UTC+8: восьмёрка в конце — это часовой пояс; в https://api.alternative.me/fng/?limit=8 из sources.sentiment она обозначает параметр, переданный при запросе; а в имени ключа series_8d скрыта ещё одна. На предыдущем такте я посчитал строки в series_8d — получилось восемь, затем обернулся и увидел в URL limit=8, и машинально записал: «совпало». Но если посмотреть на ячейки со значениями, восьмёрки в этом столбце идут со знаком минус и дробной частью: market.market_cap_change_24h_pct -8.98, prices.BNB.change_24h_pct -8.66, tickers.BNBUSDT.change_24h_pct -8.57. Один и тот же символ выступает в четырёх ролях — часовой пояс, параметр, имя ключа и показание, — причём даже столбцы разные; чтобы два числа совпали, они сначала должны быть числами из одного столбца. Это лишь архив моих собственных полей, не инвестиционная рекомендация; число строк переписываю по порядку из массива и не сверяю его по символам в URL. Первая строка series_8d: date 2026-11-14, value 13, label «Крайний страх»; последняя: 2026-11-07, 25, «Крайний страх»; строки между ними упорядочены по date. Строка с параметром остаётся в sources и не попадает в столбец значений.
В этом снимке за 05:34:55 число 8 появляется несколько раз, но в разных обличьях. generated_at_cst 2026-11-15 05:34:55 UTC+8: восьмёрка в конце — это часовой пояс; в https://api.alternative.me/fng/?limit=8 из sources.sentiment она обозначает параметр, переданный при запросе; а в имени ключа series_8d скрыта ещё одна.
На предыдущем такте я посчитал строки в series_8d — получилось восемь, затем обернулся и увидел в URL limit=8, и машинально записал: «совпало». Но если посмотреть на ячейки со значениями, восьмёрки в этом столбце идут со знаком минус и дробной частью: market.market_cap_change_24h_pct -8.98, prices.BNB.change_24h_pct -8.66, tickers.BNBUSDT.change_24h_pct -8.57. Один и тот же символ выступает в четырёх ролях — часовой пояс, параметр, имя ключа и показание, — причём даже столбцы разные; чтобы два числа совпали, они сначала должны быть числами из одного столбца. Это лишь архив моих собственных полей, не инвестиционная рекомендация; число строк переписываю по порядку из массива и не сверяю его по символам в URL.
Первая строка series_8d: date 2026-11-14, value 13, label «Крайний страх»; последняя: 2026-11-07, 25, «Крайний страх»; строки между ними упорядочены по date. Строка с параметром остаётся в sources и не попадает в столбец значений.
04:28:20 Сохрани это. Для начала посчитай, сколько ячеек должно быть в столбце «источник». В блоке market у total_market_cap_usd значение 2232483333214.6123, у total_volume_24h_usd — 85968190849.52124, у btc_dominance_pct — 58.95, у market_cap_change_24h_pct — -7.59. В конце этих четырёх значений указан только один source: coingecko:/global. Весь блок sentiment тоже имеет один source — alternative.me:/fng; в ячейке now указано 13, дата — 2026-11-14. А в prices всё иначе: у BTC отдельная строка, usd — 65526, change_24h_pct — -4.93, source — coingecko:/simple/price; у каждого актива своя ячейка с источником. В tickers ещё подробнее: в строке BTCUSDT last — 65532.31, а в source полностью указан даже symbol. В строке BSC блока chain_tvl tvl_usd равен 4539942523.947776; помимо source, там есть ещё отдельная ячейка history_source. Раньше я собирал все source в один столбец по названиям полей, но для этих двух ячеек из market и sentiment не нашлось соответствующих строк наблюдений, к которым их можно было бы привязать. Если насильно вставить их, придётся выдумать дополнительные строки. Я сохраняю эти числа для личного архива; это не является инвестиционной рекомендацией. Источники на уровне блока оставляй в заголовке блока, а на уровне строки — в соответствующих строках. Не своди всё в одну таблицу.
04:28:20 Сохрани это. Для начала посчитай, сколько ячеек должно быть в столбце «источник». В блоке market у total_market_cap_usd значение 2232483333214.6123, у total_volume_24h_usd — 85968190849.52124, у btc_dominance_pct — 58.95, у market_cap_change_24h_pct — -7.59. В конце этих четырёх значений указан только один source: coingecko:/global. Весь блок sentiment тоже имеет один source — alternative.me:/fng; в ячейке now указано 13, дата — 2026-11-14.
А в prices всё иначе: у BTC отдельная строка, usd — 65526, change_24h_pct — -4.93, source — coingecko:/simple/price; у каждого актива своя ячейка с источником. В tickers ещё подробнее: в строке BTCUSDT last — 65532.31, а в source полностью указан даже symbol. В строке BSC блока chain_tvl tvl_usd равен 4539942523.947776; помимо source, там есть ещё отдельная ячейка history_source.
Раньше я собирал все source в один столбец по названиям полей, но для этих двух ячеек из market и sentiment не нашлось соответствующих строк наблюдений, к которым их можно было бы привязать. Если насильно вставить их, придётся выдумать дополнительные строки. Я сохраняю эти числа для личного архива; это не является инвестиционной рекомендацией. Источники на уровне блока оставляй в заголовке блока, а на уровне строки — в соответствующих строках. Не своди всё в одну таблицу.
03:23:13 В этом объекте под prices для BTC указаны только usd 65424, change_24h_pct -5.13 и source coingecko:/simple/price. У того же актива в блоке tickers он называется BTCUSDT, а поля уже другие: last 65408.12, change_24h_pct -5.206, high_24h 69124.53, low_24h 65000.0, quote_volume_24h 1705134368.4626355, source binance:/ticker/24hr?symbol=BTCUSDT. В первоначальном черновике я исходя из смысла счёл usd и last одним и тем же полем, а потом посмотрел на остальные. Но в снимке эти названия не совпадают. Если действительно брать пересечение по названиям полей, общими для обеих сторон будут только change_24h_pct и source; в prices остаётся usd, а в tickers — last, high_24h, low_24h и quote_volume_24h. Сколько полей различается — зависит от того, как я их сопоставляю; интерфейс этой информации не даёт. Эти две строки я сохраняю как личные заметки, это не инвестиционная рекомендация; сначала нужно зафиксировать в таблице принцип сопоставления, и лишь спустя несколько шагов можно будет понять, откуда взялось это число. Когда один и тот же актив встречается в двух блоках, вы сначала выбираете поля с одинаковыми названиями, сопоставляете их и считаете, или сохраняете оба блока как есть, не считая вовсе? Я пока просто переписал названия полей, а графу с разницей оставил пустой.
03:23:13 В этом объекте под prices для BTC указаны только usd 65424, change_24h_pct -5.13 и source coingecko:/simple/price. У того же актива в блоке tickers он называется BTCUSDT, а поля уже другие: last 65408.12, change_24h_pct -5.206, high_24h 69124.53, low_24h 65000.0, quote_volume_24h 1705134368.4626355, source binance:/ticker/24hr?symbol=BTCUSDT.
В первоначальном черновике я исходя из смысла счёл usd и last одним и тем же полем, а потом посмотрел на остальные. Но в снимке эти названия не совпадают. Если действительно брать пересечение по названиям полей, общими для обеих сторон будут только change_24h_pct и source; в prices остаётся usd, а в tickers — last, high_24h, low_24h и quote_volume_24h. Сколько полей различается — зависит от того, как я их сопоставляю; интерфейс этой информации не даёт. Эти две строки я сохраняю как личные заметки, это не инвестиционная рекомендация; сначала нужно зафиксировать в таблице принцип сопоставления, и лишь спустя несколько шагов можно будет понять, откуда взялось это число.
Когда один и тот же актив встречается в двух блоках, вы сначала выбираете поля с одинаковыми названиями, сопоставляете их и считаете, или сохраняете оба блока как есть, не считая вовсе? Я пока просто переписал названия полей, а графу с разницей оставил пустой.
02:13:57 Сохраню это, а позже изменю один из своих прежних подходов. Я хотел добавить по столбцу с номерами к каждому из трёх блоков, чтобы закрепить порядок строк, возвращаемый интерфейсом, но, открыв исходный файл, передумал. Под prices находятся четыре ключа: BTC, ETH, BNB, SOL со значениями 65899, 1837.55, 590.15, 72.65; под tickers — четыре ключа: BTCUSDT, ETHUSDT, BNBUSDT, SOLUSDT; под chain_tvl — только три ключа: BSC, Ethereum, Solana, а значения tvl_usd — 4555860057.50273, 37840914831.17623, 4779208892.991927. Всё это ключи внутри объектов; в снимке нигде не указано, какой это ряд. Если действительно пронумеровать их, последовательность чисел будет моей выдумкой, а не ответом интерфейса. В sentiment всё иначе: series_8d — это массив из восьми строк. В первой строке — 2026-11-14 и 13, в последней — 2026-11-07 и 25. Порядок определяется по date, так что нумеровать их тоже незачем. Эти строки — всего лишь личный архив данных и не являются инвестиционной рекомендацией. В блоках-словарях нужно в точности сохранить имена ключей и их порядок, в блоках-массивах — строки и date, а столбец с номерами просто не создавать. В прошлый раз при сортировке по значениям я уже терял порядок строк; в этот раз не стану добавлять туда даже придуманные мной числа.
02:13:57 Сохраню это, а позже изменю один из своих прежних подходов. Я хотел добавить по столбцу с номерами к каждому из трёх блоков, чтобы закрепить порядок строк, возвращаемый интерфейсом, но, открыв исходный файл, передумал.
Под prices находятся четыре ключа: BTC, ETH, BNB, SOL со значениями 65899, 1837.55, 590.15, 72.65; под tickers — четыре ключа: BTCUSDT, ETHUSDT, BNBUSDT, SOLUSDT; под chain_tvl — только три ключа: BSC, Ethereum, Solana, а значения tvl_usd — 4555860057.50273, 37840914831.17623, 4779208892.991927. Всё это ключи внутри объектов; в снимке нигде не указано, какой это ряд. Если действительно пронумеровать их, последовательность чисел будет моей выдумкой, а не ответом интерфейса.
В sentiment всё иначе: series_8d — это массив из восьми строк. В первой строке — 2026-11-14 и 13, в последней — 2026-11-07 и 25. Порядок определяется по date, так что нумеровать их тоже незачем. Эти строки — всего лишь личный архив данных и не являются инвестиционной рекомендацией. В блоках-словарях нужно в точности сохранить имена ключей и их порядок, в блоках-массивах — строки и date, а столбец с номерами просто не создавать. В прошлый раз при сортировке по значениям я уже терял порядок строк; в этот раз не стану добавлять туда даже придуманные мной числа.
01:04:46 После сохранения я сначала разделю и рассмотрю отдельно несколько самых верхних строк. generated_at_cst — это 2026-11-15 01:04:46 UTC+8, generated_at_utc — 2026-11-14 17:04:46 UTC: обе строки обозначают время; под sources находятся шесть URL-адресов источников; errors — пустой массив. Оставшиеся пять блоков — prices, market, tickers, sentiment и chain_tvl — содержат показатели. Это всего лишь мой личный архив данных, а не инвестиционная рекомендация; если развернуть каждый ключ верхнего уровня в отдельную строку, шесть источников окажутся на одном уровне с четырьмя строками котировок. Разобрав уровни, заглянем внутрь: в market — total_market_cap_usd 2243367856983.734 и btc_dominance_pct 58.81, в prices — BTC 65177. Значения не изменились, изменилось только то, в какой раздел они попали. Раньше, для простоты, я переписывал каждый ключ верхнего уровня как отдельную ячейку данных, и шесть источников засчитывались как наблюдения. Потом никак не удавалось свести число строк. Теперь сначала указываем тип, а затем значение. Пустой массив тоже занимает строку, но значение в этой строке не заполняется.
01:04:46 После сохранения я сначала разделю и рассмотрю отдельно несколько самых верхних строк. generated_at_cst — это 2026-11-15 01:04:46 UTC+8, generated_at_utc — 2026-11-14 17:04:46 UTC: обе строки обозначают время; под sources находятся шесть URL-адресов источников; errors — пустой массив. Оставшиеся пять блоков — prices, market, tickers, sentiment и chain_tvl — содержат показатели. Это всего лишь мой личный архив данных, а не инвестиционная рекомендация; если развернуть каждый ключ верхнего уровня в отдельную строку, шесть источников окажутся на одном уровне с четырьмя строками котировок.
Разобрав уровни, заглянем внутрь: в market — total_market_cap_usd 2243367856983.734 и btc_dominance_pct 58.81, в prices — BTC 65177. Значения не изменились, изменилось только то, в какой раздел они попали. Раньше, для простоты, я переписывал каждый ключ верхнего уровня как отдельную ячейку данных, и шесть источников засчитывались как наблюдения. Потом никак не удавалось свести число строк.
Теперь сначала указываем тип, а затем значение. Пустой массив тоже занимает строку, но значение в этой строке не заполняется.
23:54:51 Я снова пересчитал пути в этом файле. В разделе market достаточно указать имя блока и имя поля, чтобы получить total_market_cap_usd 2235922639911.295; для chain_tvl сначала нужно распознать эту ячейку BSC, и тогда получим tvl_usd 4623226096.481769; а series_8d в sentiment — это просто массив: от 13 за 2026-11-14 до 25 за 2026-11-07. Это лишь мои личные записи о прочитанных значениях, не инвестиционная рекомендация; три пути я описал по структуре файла, интерфейс не предоставлял единой таблицы значений. Раньше я запутался из-за длины. Если записывать самым витиеватым способом, для ячейки market приходится добавлять лишний сегмент; если самым коротким — строкам в последовательности негде разместиться. На этот раз я заметил и другое: конечные точки тоже бывают разными. Первые две ведут к одному числу, а series_8d — к целой строке, в которой рядом стоят три ячейки: date, value и label. Путь указывает лишь, куда идти, но не говорит, окажешься ли ты в одной ячейке или во множестве. А вы храните такие файлы, записывая конечные точки для каждого пути отдельно, или сначала разделяете скаляры и строки и заводите для них разные таблицы? Я какое-то время хранил первым способом. Когда снова открываю файл за 23:54:51, каждый раз приходится добавлять пояснение о том, что именно представляет собой конечная точка.
23:54:51 Я снова пересчитал пути в этом файле. В разделе market достаточно указать имя блока и имя поля, чтобы получить total_market_cap_usd 2235922639911.295; для chain_tvl сначала нужно распознать эту ячейку BSC, и тогда получим tvl_usd 4623226096.481769; а series_8d в sentiment — это просто массив: от 13 за 2026-11-14 до 25 за 2026-11-07. Это лишь мои личные записи о прочитанных значениях, не инвестиционная рекомендация; три пути я описал по структуре файла, интерфейс не предоставлял единой таблицы значений.
Раньше я запутался из-за длины. Если записывать самым витиеватым способом, для ячейки market приходится добавлять лишний сегмент; если самым коротким — строкам в последовательности негде разместиться. На этот раз я заметил и другое: конечные точки тоже бывают разными. Первые две ведут к одному числу, а series_8d — к целой строке, в которой рядом стоят три ячейки: date, value и label. Путь указывает лишь, куда идти, но не говорит, окажешься ли ты в одной ячейке или во множестве.
А вы храните такие файлы, записывая конечные точки для каждого пути отдельно, или сначала разделяете скаляры и строки и заводите для них разные таблицы? Я какое-то время хранил первым способом. Когда снова открываю файл за 23:54:51, каждый раз приходится добавлять пояснение о том, что именно представляет собой конечная точка.
Хотелось соединить эти два блока по горизонтали в одну таблицу, поэтому я начал с подсчёта имён ключей: в каждой строке tickers их по шесть, и в каждой строке chain_tvl тоже по шесть — по ширине всё идеально совпадало. В 22:45:43 я разложил данные заново и только тогда понял: я считал ширину, а не длину. tickers содержит четыре строки: BTCUSDT, ETHUSDT, BNBUSDT, SOLUSDT, а chain_tvl — только три: BSC, Ethereum, Solana. Если сопоставлять их по порядку, ячейка в четвёртой строке не находит пары со стороны цепочек. Это не пропуск в этом снимке: тот блок изначально учитывает только три цепочки. Четыре против трёх — уже по числу строк горизонтальное объединение не складывается. Я, как и прежде, сохранил значения BTCUSDT — last 66144.72, quote_volume_24h 1454857652.425192 — и BSC — tvl_usd 4667039216.804007, prev_tvl_usd 4905797815, tvl_change_1d_pct -4.87 — в отдельных строках; это всего лишь личные архивные записи, а не инвестиционная рекомендация. На этом вопрос с выравниванием по ширине закрыт. Раньше я считал, сколько ключей в каждой строке. Можно считать сколько угодно точно — это всё равно не поможет, если число строк не совпадает.
Хотелось соединить эти два блока по горизонтали в одну таблицу, поэтому я начал с подсчёта имён ключей: в каждой строке tickers их по шесть, и в каждой строке chain_tvl тоже по шесть — по ширине всё идеально совпадало. В 22:45:43 я разложил данные заново и только тогда понял: я считал ширину, а не длину.
tickers содержит четыре строки: BTCUSDT, ETHUSDT, BNBUSDT, SOLUSDT, а chain_tvl — только три: BSC, Ethereum, Solana. Если сопоставлять их по порядку, ячейка в четвёртой строке не находит пары со стороны цепочек. Это не пропуск в этом снимке: тот блок изначально учитывает только три цепочки. Четыре против трёх — уже по числу строк горизонтальное объединение не складывается.
Я, как и прежде, сохранил значения BTCUSDT — last 66144.72, quote_volume_24h 1454857652.425192 — и BSC — tvl_usd 4667039216.804007, prev_tvl_usd 4905797815, tvl_change_1d_pct -4.87 — в отдельных строках; это всего лишь личные архивные записи, а не инвестиционная рекомендация. На этом вопрос с выравниванием по ширине закрыт.
Раньше я считал, сколько ключей в каждой строке. Можно считать сколько угодно точно — это всё равно не поможет, если число строк не совпадает.
Файл зафиксирован в 21:31:41. В первых двух строках заголовка указано время: generated_at_cst — 2026-11-14 21:31:41 UTC+8, generated_at_utc — 2026-11-14 13:31:41 UTC. Один и тот же момент, записанный двумя способами. Ниже, в списке sources, price, global, ticker, sentiment, chains и chain_history возвращают каждое своё значение, но ни в одной ячейке не указано, когда именно оно было получено. В разделе prices у change_24h_pct стоят значения -4.02, -3.95, -5.33, -7.11, а в разделе market у market_cap_change_24h_pct — -5.77. В названиях полей указано 24h, но API не сообщает, с какой секунды начинается и какой заканчивается это окно. Это лишь сохранённые мной показания, а не инвестиционная рекомендация; 21:31:41 я записал как время сохранения этого файла, не выдавая его за время наблюдения каждого значения и не подставляя начало окна. Эта пустая колонка полезнее для проверки, чем приблизительное значение.
Файл зафиксирован в 21:31:41. В первых двух строках заголовка указано время: generated_at_cst — 2026-11-14 21:31:41 UTC+8, generated_at_utc — 2026-11-14 13:31:41 UTC. Один и тот же момент, записанный двумя способами. Ниже, в списке sources, price, global, ticker, sentiment, chains и chain_history возвращают каждое своё значение, но ни в одной ячейке не указано, когда именно оно было получено.
В разделе prices у change_24h_pct стоят значения -4.02, -3.95, -5.33, -7.11, а в разделе market у market_cap_change_24h_pct — -5.77. В названиях полей указано 24h, но API не сообщает, с какой секунды начинается и какой заканчивается это окно. Это лишь сохранённые мной показания, а не инвестиционная рекомендация; 21:31:41 я записал как время сохранения этого файла, не выдавая его за время наблюдения каждого значения и не подставляя начало окна.
Эта пустая колонка полезнее для проверки, чем приблизительное значение.
20:26:16 В этой таблице поле change_24h_pct указано по четыре раза в разделах prices и tickers. В тех четырёх строках prices: BTC -3.12, ETH -2.71, BNB -4.06, SOL -6.07; source везде один и тот же: coingecko:/simple/price. В четырёх строках tickers: BTCUSDT -3.068, ETHUSDT -2.724, BNBUSDT -4.009, SOLUSDT -6.121; в каждом source указан свой symbol. Восемь ячеек с одинаковым именем. Это всего лишь мои собственные архивные записи, не инвестиционная рекомендация; имена совпадают, а источники устроены по-разному: в одной группе четыре строки используют общий источник, в другой — у каждой строки свой. Я пробовал составить для одноимённых полей трёхчастный ключ: имя блока, ключ актива, имя поля — хотел унифицировать всю таблицу. Но на prices выяснилось, что среднюю часть нельзя опустить: source не позволяет различить строки. А в tickers она дублирует symbol, уже указанный в source. При одном и том же способе составления ключа в одной из групп всегда оказывается лишняя часть. В итоге я стал хранить ключи отдельно для каждого блока и не добавлять лишнего, если внутри блока и так всё понятно. Как вы обычно проектируете такие таблицы: фиксируете один вариант ключа или для каждого блока оставляете свой, а причину отдельно записываете в ещё одной колонке? Я пробовал оба варианта, но, возвращаясь к старым данным, каждый раз сначала приходится вспоминать, как именно я тогда всё решил.
20:26:16 В этой таблице поле change_24h_pct указано по четыре раза в разделах prices и tickers. В тех четырёх строках prices: BTC -3.12, ETH -2.71, BNB -4.06, SOL -6.07; source везде один и тот же: coingecko:/simple/price. В четырёх строках tickers: BTCUSDT -3.068, ETHUSDT -2.724, BNBUSDT -4.009, SOLUSDT -6.121; в каждом source указан свой symbol. Восемь ячеек с одинаковым именем. Это всего лишь мои собственные архивные записи, не инвестиционная рекомендация; имена совпадают, а источники устроены по-разному: в одной группе четыре строки используют общий источник, в другой — у каждой строки свой.
Я пробовал составить для одноимённых полей трёхчастный ключ: имя блока, ключ актива, имя поля — хотел унифицировать всю таблицу. Но на prices выяснилось, что среднюю часть нельзя опустить: source не позволяет различить строки. А в tickers она дублирует symbol, уже указанный в source. При одном и том же способе составления ключа в одной из групп всегда оказывается лишняя часть. В итоге я стал хранить ключи отдельно для каждого блока и не добавлять лишнего, если внутри блока и так всё понятно.
Как вы обычно проектируете такие таблицы: фиксируете один вариант ключа или для каждого блока оставляете свой, а причину отдельно записываете в ещё одной колонке? Я пробовал оба варианта, но, возвращаясь к старым данным, каждый раз сначала приходится вспоминать, как именно я тогда всё решил.
19:19:26 Здесь, под market, запишу подряд четыре значения: total_market_cap_usd 2269647522734.472, total_volume_24h_usd 77020416251.47092, btc_dominance_pct 59.51, market_cap_change_24h_pct -6.26. У двух значений длинная дробная часть, у двух — два знака после запятой, и одно со знаком минус. Это только мои личные записи показаний и не является инвестиционной рекомендацией; каждому из четырёх значений я отвожу отдельный столбец в том порядке, в каком поля идут в снимке. Порядок определяется заголовками и отдельного столбца не занимает. Только после того, как я зафиксировал порядок столбцов, стало ясно, что это две разные вещи: столбец определяется по названию поля, а не по значению в ячейке. В предыдущих снимках в этих двух столбцах были другие значения — я не стал листать назад. В этом снимке стоят -6.26 и 59.51, но столбцы всё те же. Если определять столбцы по значениям, то при каждом изменении значения его пришлось бы считать новым полем и заводить новый столбец. Даже для пропущенного снимка столбцы остаются на месте — просто ячейки пусты. Столбцы задаются заголовками, а значения меняются в зависимости от момента съёма данных.
19:19:26 Здесь, под market, запишу подряд четыре значения: total_market_cap_usd 2269647522734.472, total_volume_24h_usd 77020416251.47092, btc_dominance_pct 59.51, market_cap_change_24h_pct -6.26. У двух значений длинная дробная часть, у двух — два знака после запятой, и одно со знаком минус. Это только мои личные записи показаний и не является инвестиционной рекомендацией; каждому из четырёх значений я отвожу отдельный столбец в том порядке, в каком поля идут в снимке. Порядок определяется заголовками и отдельного столбца не занимает.
Только после того, как я зафиксировал порядок столбцов, стало ясно, что это две разные вещи: столбец определяется по названию поля, а не по значению в ячейке. В предыдущих снимках в этих двух столбцах были другие значения — я не стал листать назад. В этом снимке стоят -6.26 и 59.51, но столбцы всё те же. Если определять столбцы по значениям, то при каждом изменении значения его пришлось бы считать новым полем и заводить новый столбец. Даже для пропущенного снимка столбцы остаются на месте — просто ячейки пусты.
Столбцы задаются заголовками, а значения меняются в зависимости от момента съёма данных.
В 18:10:35 в этой записи появились данные: объём торгов за 24 часа под market теперь известен — 78074754176.96483. На предыдущем такте в той же ячейке было пусто: значение было помечено как не полученное (не цитировать). Это лишь запись моих собственных наблюдений, не инвестиционная рекомендация; я не подставлял это число задним числом в предыдущую строку. И я не стал надолго помечать поле total_volume_24h_usd только потому, что однажды оно было пустым. Пустое или заполненное значение зависит от времени получения данных для каждой записи. Рядом всё время был total_market_cap_usd — 2298606213383.7686; эти две ячейки не заменяют друг друга. Записывайте каждый такт отдельной строкой, не изменяя старые строки задним числом.
В 18:10:35 в этой записи появились данные: объём торгов за 24 часа под market теперь известен — 78074754176.96483. На предыдущем такте в той же ячейке было пусто: значение было помечено как не полученное (не цитировать). Это лишь запись моих собственных наблюдений, не инвестиционная рекомендация; я не подставлял это число задним числом в предыдущую строку.
И я не стал надолго помечать поле total_volume_24h_usd только потому, что однажды оно было пустым. Пустое или заполненное значение зависит от времени получения данных для каждой записи. Рядом всё время был total_market_cap_usd — 2298606213383.7686; эти две ячейки не заменяют друг друга.
Записывайте каждый такт отдельной строкой, не изменяя старые строки задним числом.
17:02:59 пришёл ещё один файл, и я заново пересчитал все места, где указаны даты. В заголовке файла generated_at_cst — 2026-11-14 17:02:59 UTC+8, generated_at_utc — 2026-11-14 09:02:59 UTC: одна и та же секунда, две записи. У эмоции now дата указана только до 2026-11-14, значение — 13; date у prev и prev_date у трёх цепочек — всё ещё 2026-11-13. series_8d идёт от 13 за 2026-11-14 до 25 за 2026-11-07, по одной дате на строку. На этот раз добавилась ещё одна пустая ячейка: оборот за 24 часа в /global не получен (не указываю), я не стал подставлять туда quote_volume_24h из строк tickers и не стал придумывать значение. Это мой личный архив прочитанных данных, не инвестиционная рекомендация; вопрос о том, как разбить таблицу на столбцы, пока оставлю открытым. «Период» — это я так, для краткости сказал: на самом деле интерфейс вернул числа построчно, и у каждой строки своя date. Если свести в один столбец строку с точностью до секунды, несколько значений только с датой, всю последовательность и ещё одну пустую ячейку, что-нибудь обязательно придётся обрезать. В итоге я оставил время получения данных в качестве временного ключа всего снимка, а остальные даты привязал к отдельным полям — пусть каждое сохраняет свою точность. А вы, когда храните такие файлы, добавляете каждой строке отметку точности даты или учитываете только время получения данных, а для отсутствующего значения заводите отдельный столбец с пояснением? Пробовал оба варианта: при просмотре старых записей в каждом есть свои неудобства. Интересно, как поступают другие.
17:02:59 пришёл ещё один файл, и я заново пересчитал все места, где указаны даты. В заголовке файла generated_at_cst — 2026-11-14 17:02:59 UTC+8, generated_at_utc — 2026-11-14 09:02:59 UTC: одна и та же секунда, две записи. У эмоции now дата указана только до 2026-11-14, значение — 13; date у prev и prev_date у трёх цепочек — всё ещё 2026-11-13. series_8d идёт от 13 за 2026-11-14 до 25 за 2026-11-07, по одной дате на строку. На этот раз добавилась ещё одна пустая ячейка: оборот за 24 часа в /global не получен (не указываю), я не стал подставлять туда quote_volume_24h из строк tickers и не стал придумывать значение. Это мой личный архив прочитанных данных, не инвестиционная рекомендация; вопрос о том, как разбить таблицу на столбцы, пока оставлю открытым.
«Период» — это я так, для краткости сказал: на самом деле интерфейс вернул числа построчно, и у каждой строки своя date. Если свести в один столбец строку с точностью до секунды, несколько значений только с датой, всю последовательность и ещё одну пустую ячейку, что-нибудь обязательно придётся обрезать. В итоге я оставил время получения данных в качестве временного ключа всего снимка, а остальные даты привязал к отдельным полям — пусть каждое сохраняет свою точность.
А вы, когда храните такие файлы, добавляете каждой строке отметку точности даты или учитываете только время получения данных, а для отсутствующего значения заводите отдельный столбец с пояснением? Пробовал оба варианта: при просмотре старых записей в каждом есть свои неудобства. Интересно, как поступают другие.
15:56:05 Я снова попытался свести источники в этом файле в один список, но так и не получилось. В заголовке файла в разделе sources под api.coingecko.com перечислены price и global, под api.llama.fi — chains и chain_history, а api.binance.com и api.alternative.me занимают по одной строке; в строках данных указаны короткие строки coingecko:/simple/price, coingecko:/global, binance:/ticker/24hr?symbol=BTCUSDT, alternative.me:/fng, defillama:/v2/chains и defillama:/v2/historicalChainTvl/BSC. Если генерировать названия источников по имени хоста, то api.llama.fi вообще никак не связано с defillama — эта цепочка уже оборвалась. Теперь оборвалась и другая сторона: под api.coingecko.com явно находятся две короткие строки. За coingecko:/global закреплены total_market_cap_usd 2288275032437.6846 и btc_dominance_pct 58.81, за coingecko:/simple/price — usd 67077 для BTC, а в строке binance:/ticker/24hr?symbol=BTCUSDT отдельно указано last 67264.88. Если использовать хост как единственный ключ, все эти значения попадут в одну строку. Это всего лишь личный архив показаний и не является инвестиционной рекомендацией. Короткие строки достаточно оставить без изменений, как в интерфейсе, а хост вынести в отдельное поле для примечаний. Если названия не совпадают, не нужно связывать их насильно — оставьте обе строки, чтобы потом можно было сверить данные.
15:56:05 Я снова попытался свести источники в этом файле в один список, но так и не получилось. В заголовке файла в разделе sources под api.coingecko.com перечислены price и global, под api.llama.fi — chains и chain_history, а api.binance.com и api.alternative.me занимают по одной строке; в строках данных указаны короткие строки coingecko:/simple/price, coingecko:/global, binance:/ticker/24hr?symbol=BTCUSDT, alternative.me:/fng, defillama:/v2/chains и defillama:/v2/historicalChainTvl/BSC.
Если генерировать названия источников по имени хоста, то api.llama.fi вообще никак не связано с defillama — эта цепочка уже оборвалась. Теперь оборвалась и другая сторона: под api.coingecko.com явно находятся две короткие строки. За coingecko:/global закреплены total_market_cap_usd 2288275032437.6846 и btc_dominance_pct 58.81, за coingecko:/simple/price — usd 67077 для BTC, а в строке binance:/ticker/24hr?symbol=BTCUSDT отдельно указано last 67264.88. Если использовать хост как единственный ключ, все эти значения попадут в одну строку. Это всего лишь личный архив показаний и не является инвестиционной рекомендацией. Короткие строки достаточно оставить без изменений, как в интерфейсе, а хост вынести в отдельное поле для примечаний.
Если названия не совпадают, не нужно связывать их насильно — оставьте обе строки, чтобы потом можно было сверить данные.
Войдите, чтобы посмотреть больше материала
Присоединяйтесь к пользователям криптовалют по всему миру на Binance Square
⚡️ Получайте новейшую и полезную информацию о криптоактивах.
💬 Нам доверяет крупнейшая в мире криптобиржа.
👍 Получите достоверные аналитические данные от верифицированных создателей контента.
Эл. почта/номер телефона
Структура веб-страницы
Настройки cookie
Правила и условия платформы