Файл прекрасен. А можно попросить добавить Р1-P3? Пожалуйста - пожалуйста!
Донат На хостинг |
ISK за переводы до 75kk за 1000зн. |
Хроники EVE Сборник |
Новичкам Полезная информация |
GDocs - вытягиваем цены. Гайд для совсем чайников. UPD 18.02.2019
#142
Отправлено 10 December 2018 - 9:13
Если про мой, то 1) спасибо, 2) 1-3 дня подожди, 3)Сейчас делаю для себя другой вариант, под свои задачи, там будут некоторые бпц и больше наименований материалов, но не будет медианных цен.
Если интересно что то еще пишите сразу, если в наработках есть то закину в паблик версию. если медиана не нужна, то из паблик уберу. медианные цены это отдельные запросы, они замедляют работу и могут спровоцировать ограничения по количеству запросов....
Так же можете дать другие мелкие региональные рынки, добавлю
как бы без скриптов, только средствами гуглодоков получить "правильные" селл/бай, с учетом объемов?
Сообщение отредактировал fxea: 10 December 2018 - 9:20
Сущности, игнор которых делает форум лучше: massdriver , Jerome Higs , КотМэн , anknown , Smoketriada , Likon , Corpse
<url=fitting:17843:2048;1:33896;3:1335;23:2488;5:2185;5:2446;5::>VNI ULTIMATE HULL TANK</url>
"Еще неизвестно запасы чего исчерпаются в этой игре раньше. Минералов или... игроков." © Art1st
#143
Отправлено 10 December 2018 - 9:36
как бы без скриптов, только средствами гуглодоков получить "правильные" селл/бай, с учетом объемов?
Могу ошибаться, т.к. есть зависимость от API , но скорей всего в запросе с типами sell и buy есть доп.параметр:
minQ=
Сообщение отредактировал New Strannik: 10 December 2018 - 9:37
#145
Отправлено 10 December 2018 - 10:06
Спойлер
использую https://api.evemarketer.com/ec/
но про https://esi.evetech.net/ui/#/Market тоже знаю
....добавить Р1-P3? ...
Да, про твой.)
Спойлер
Сущности, игнор которых делает форум лучше: massdriver , Jerome Higs , КотМэн , anknown , Smoketriada , Likon , Corpse
<url=fitting:17843:2048;1:33896;3:1335;23:2488;5:2185;5:2446;5::>VNI ULTIMATE HULL TANK</url>
"Еще неизвестно запасы чего исчерпаются в этой игре раньше. Минералов или... игроков." © Art1st
#146
Отправлено 10 December 2018 - 10:20
использую https://api.evemarketer.com/ec/
ForQuery{ bid: boolean is buy? types: [...] regions: [...] systems: [...] hours: integer ($int32) always 0 minq: integer ($int32) always 0 }
на eve-central работало, пока был жив.
Сообщение отредактировал New Strannik: 10 December 2018 - 10:30
#147
Отправлено 10 December 2018 - 13:57
использую https://api.evemarketer.com/ec/
но про https://esi.evetech.net/ui/#/Market тоже знаюЧто нибудь еще? ID для этого уже в принципе готовы.
Это просто праздник какой-то. Здесь все, что нужно на "сейчас" и пол года вперед!
#148
Отправлено 12 December 2018 - 9:41
Остальное позже, потому что ИД это еще не все что нужно.
Кстати, проверяйте на первых порах соответствие ИД наименованию. Поскольку источник ИД - интернеты, а наименований списком - ингейм маркет
Сообщение отредактировал fxea: 12 December 2018 - 9:44
Сущности, игнор которых делает форум лучше: massdriver , Jerome Higs , КотМэн , anknown , Smoketriada , Likon , Corpse
<url=fitting:17843:2048;1:33896;3:1335;23:2488;5:2185;5:2446;5::>VNI ULTIMATE HULL TANK</url>
"Еще неизвестно запасы чего исчерпаются в этой игре раньше. Минералов или... игроков." © Art1st
#150
Отправлено 14 December 2018 - 14:05
Не стыкуется с тем, что вижу на рынке. Как считаются средние цены?
вот так - https://evemarketer.com/ и https://api.evemarketer.com/ec/ (это к тому что считает не мой гуглодок а ивмаркетер)
а нестыковки возможны еще и по причине несоответствия ИД наименованию.. я проверял глазками, кое что набирал ручками, мог и ошибиться...по конкретным позициям которые вызывают сомнения напиши в личку.
Сущности, игнор которых делает форум лучше: massdriver , Jerome Higs , КотМэн , anknown , Smoketriada , Likon , Corpse
<url=fitting:17843:2048;1:33896;3:1335;23:2488;5:2185;5:2446;5::>VNI ULTIMATE HULL TANK</url>
"Еще неизвестно запасы чего исчерпаются в этой игре раньше. Минералов или... игроков." © Art1st
#151
Отправлено 12 January 2019 - 12:26
Перестал работать скрипт
кто может починить или пригодится кому..
Там в принципе старая таблица ID-наименование сохранилась.
#152
Отправлено 18 February 2019 - 10:58
фига вы тут развели. все же гораздо проще.
уходит исправлять первый пост
Пару дней назад НЦ стреляли хаб, а мы его качали, вчера вот СБУ пилили пока НЦ стреляли станку. © hydr0gen
паладин - это рейдер с радиаторами и световыми пушками. джедай с батареей б**** © Finne Trolle
#153
Отправлено 18 February 2019 - 23:42
=importData("https://www.fuzzwork.co.uk/resources/typeids.csv")
3) Ждем пока прогрузится. Пока ждем переименовываем лист на TypeID (правой кнопкой по названию листа - rename)
https://docs.google.com/spreadsheets/d/1Fn992WM0mvo_C54jVk_FhHbRNNfrviaw2864Cri6I90/edit?usp=sharing
3) Создаем в документе с рассчетами лист, называйте, как больше нравится.
=VLOOKUP(A1,IMPORTRANGE("https://docs.google.com/spreadsheets/d/1Fn992WM0mvo_C54jVk_FhHbRNNfrviaw2864Cri6I90/edit#gid=0","TypeID!A1:F"),2,FALSE)
Либо
=Query(IMPORTRANGE("https://docs.google.com/spreadsheets/d/1Fn992WM0mvo_C54jVk_FhHbRNNfrviaw2864Cri6I90/edit#gid=0","TypeID!A1:F"),"Select Col2 where Col1='"&A1&"'")
Оба способа рабочие. Смотрите, что будет меньше лагать.
=VLOOKUP(A1, R_ID, 2, False)
=VLOOKUP(D14,IMPORTRANGE("https://docs.google.com/spreadsheets/d/1Fn992WM0mvo_C54jVk_FhHbRNNfrviaw2864Cri6I90/edit#gid=0","Example!A1:B"),2,FALSE)
(Можно и через Query, но как показала практика там жесткие тупняки)
=IMPORTRANGE("https://docs.google.com/spreadsheets/d/1Fn992WM0mvo_C54jVk_FhHbRNNfrviaw2864Cri6I90/edit#gid=0","Example!A1:B")
Это загрузит сразу весь список с названием и ID
Глава 2: Подтягиваем цены
Дальше буду показывать со скриншотами, т.к. не все знакомы с функционалом доков, или не понимают, что и как.
Сразу оговорюсь, это основа, при которой цены можно выдернуть, дальше модифицируйте свои таблицы по вашему желанию.
Шаг 1. Создаем таблицу/открываем старую
Шаг 2. Создаем лист, куда собственно эти цены мы и будем импортировать. У меня это называется price . (Да, сразу отмечу, что у меня 2 таблицы для цен. price source - импортирует цены, price - подставляет цены к названиям. Мне так удобней, а как вам делать - ваша головная боль)
Шаг 3. Идем: Tools -> Script Editor
Шаг 4. Дальше откроется новая ссылка, где нам будет предложено выбрать, что создаем. Тыкаем на Blank Project.
Шаг 5. Стираем то, что написано в редакторе. И вставляем:
Шаг 6. Сохраняем. Я обзываю этот скрипт loadRegionAggregates
. Больше нам это не требуется (потребуется, если надо будет фильтровать, об этом ниже)
Шаг 7. Идем на лист Price
В ячейку А1 вставляем:
=loadRegionAggregates(Types!A:A)
Шаг 8. Наслаждаемся результатом.
Что можно поправить в скрипте:
Изменить регион
regionID=10000002; << замените на нужный
parseInt(rows[i].getChild("buy").getChild("volume").getValue()), << Объем покупки
parseFloat(rows[i].getChild("buy").getChild("avg").getValue()), << Средняя цена покупки
parseFloat(rows[i].getChild("buy").getChild("max").getValue()), << Максимальная цена покупки
parseFloat(rows[i].getChild("buy").getChild("min").getValue()), << Минимальная цена покупки
parseFloat(rows[i].getChild("buy").getChild("stddev").getValue()), << Что-то с отклонением (кто знает, напишите плз)
parseFloat(rows[i].getChild("buy").getChild("median").getValue()), << Медиана покупки
parseFloat(rows[i].getChild("buy").getChild("percentile").getValue()), << Что-то с процентами(кто знает, напишите плз)
parseInt(rows[i].getChild("sell").getChild("volume").getValue()), << Объем продаж
parseFloat(rows[i].getChild("sell").getChild("avg").getValue()), << Средняя цена продажи
parseFloat(rows[i].getChild("sell").getChild("max").getValue()), << Максимальная цена продажи
parseFloat(rows[i].getChild("sell").getChild("min").getValue()), << Минимальная цена продажи
parseFloat(rows[i].getChild("sell").getChild("stddev").getValue()), << Что-то с отклонением (кто знает, напишите плз)
parseFloat(rows[i].getChild("sell").getChild("median").getValue()), << Медиана покупки
parseFloat(rows[i].getChild("sell").getChild("percentile").getValue()), <<Что-то с процентами(кто знает, напишите плз)
ВАЖНО! Если вам не нужна последняя часть, и вы её удаляете:
parseFloat(rows[i].getChild("sell").getChild("percentile").getValue()),
то не забудьте поставить
];
после запятой в том месте, где заканчивается список того, что вам нужно. (см. пример ниже)
Пример замены забирающий Объем покупок, Максимальную цену покупки, Объем продаж, Минимальную цену продажи
parseInt(rows[i].getChild("buy").getChild("volume").getValue()),
parseFloat(rows[i].getChild("buy").getChild("max").getValue()),
parseInt(rows[i].getChild("sell").getChild("volume").getValue()),
parseFloat(rows[i].getChild("sell").getChild("min").getValue())];
Результат на листе Price:
https://docs.google....dit?usp=sharing
p.p.s Оригинал скрипта
Так о чем я
Один раз настроишь, потом не паришься
Сообщение отредактировал Aliner: 19 February 2019 - 0:17
Пару дней назад НЦ стреляли хаб, а мы его качали, вчера вот СБУ пилили пока НЦ стреляли станку. © hydr0gen
паладин - это рейдер с радиаторами и световыми пушками. джедай с батареей б**** © Finne Trolle
#154
Отправлено 18 February 2019 - 23:51
Спасибо, клевый системный способ. Но я останусь при своих, поскольку ВСЕ ID не нужны, но их список с названиями из конкретных веток маркета это то что надо. Тем более что свой способ я тоже модернизировал. )
=INDEX(TUT_DIAPAZON_SO_SPISKOM:DVE_KOLONKI;(MATCH(TUT_YACHEIKA_S_PROVERKOI_DANNIH_PO_KOLONKE_S_NAZVANIYAMI;KOLONKA_S_NAZVANIYAMI;0));2)Мой пример:
=INDEX(C10:D62;(MATCH(Composite!C2;C10:C62;0));2)
Есть 2 нюанса: 1) Синтаксис зависит от языка документа, например вместо точки с запятой просто запятая 2) В примере возвращается 2 колонка списка. У меня ID там потому что я меняю местами после вставки списка в гуглодоки и разбивки на колонки. Изначально ID идут первыми
Сообщение отредактировал fxea: 19 February 2019 - 0:01
Сущности, игнор которых делает форум лучше: massdriver , Jerome Higs , КотМэн , anknown , Smoketriada , Likon , Corpse
<url=fitting:17843:2048;1:33896;3:1335;23:2488;5:2185;5:2446;5::>VNI ULTIMATE HULL TANK</url>
"Еще неизвестно запасы чего исчерпаются в этой игре раньше. Минералов или... игроков." © Art1st
#156
Отправлено 19 February 2019 - 0:20
Спасибо, клевый системный способ. Но я останусь при своих, поскольку ВСЕ ID не нужны, но их список с названиями из конкретных веток маркета это то что надо. Тем более что свой способ я тоже модернизировал. )
СпойлерДля того что бы сделать из этого раскрывающийся список и получить ID выбранной в списке позиции я делаю так:=INDEX(TUT_DIAPAZON_SO_SPISKOM:DVE_KOLONKI;(MATCH(TUT_YACHEIKA_S_PROVERKOI_DANNIH_PO_KOLONKE_S_NAZVANIYAMI;KOLONKA_S_NAZVANIYAMI;0));2)Мой пример:=INDEX(C10:D62;(MATCH(Composite!C2;C10:C62;0));2)Спойлер
Есть 2 нюанса: 1) Синтаксис зависит от языка документа, например вместо точки с запятой просто запятая 2) В примере возвращается 2 колонка списка. У меня ID там потому что я меняю местами после вставки списка в гуглодоки и разбивки на колонки. Изначально ID идут первыми
Способов много. Я просто показала, какими способами можно упростить себе жизнь. Готовых именно решений я не выкладываю. Каждый возьмет нужный для себя и сделает, как удобно
Пару дней назад НЦ стреляли хаб, а мы его качали, вчера вот СБУ пилили пока НЦ стреляли станку. © hydr0gen
паладин - это рейдер с радиаторами и световыми пушками. джедай с батареей б**** © Finne Trolle
#157
Отправлено 19 February 2019 - 5:52
parseFloat(rows[i].getChild("buy").getChild("stddev").getValue()), << Что-то с отклонением (кто знает, напишите плз)
parseFloat(rows[i].getChild("buy").getChild("percentile").getValue()), << Что-то с процентами(кто знает, напишите плз)
parseFloat(rows[i].getChild("sell").getChild("stddev").getValue()), << Что-то с отклонением (кто знает, напишите плз)
parseFloat(rows[i].getChild("sell").getChild("percentile").getValue()), <<Что-то с процентами(кто знает, напишите плз)
stddev - SD, Среднеквадратичное отклонение.
percentile - Перцентиль, перцентилем и называют, в eve маркете 90% перцентиль.
Сообщение отредактировал New Strannik: 19 February 2019 - 6:49
#158
Отправлено 04 May 2019 - 20:53
А можно пример скрипта что бы по ID тянуло данные для стройки/ивента? такого типа https://clip2net.com/s/41o4s07
или если можно исправить скрипт в моем файле, выше выкладывал.
Сообщение отредактировал grober: 04 May 2019 - 20:56
0 посетителей читают тему
0 members, 0 guests, 0 anonymous users