
Piu
10.07.2018
16:19:52

Евгений
10.07.2018
16:30:56
Ну если честно я вообще не понимаю чем вас не устраивают промисы в JS.

AndrInsider
10.07.2018
16:39:49

Евгений
10.07.2018
16:43:51

Google

Artyom
10.07.2018
16:43:58
Всем привет, есть некоторая проблема, вообщем есть модалка которая может открываться на любом руте. Каким образом сделать рут для модалки, чтоб можно было отправить пост реквест откуда хочешь. На фронте джиквери, бэк енд экспресс джс.

AndrInsider
10.07.2018
16:45:03
Если я написал приложуху на ноде. С Express а как мне ее на хостинг закинуть, публично.
С какой версии?

Евгений
10.07.2018
16:46:47
Т.е хер знает когда.

енот
10.07.2018
16:48:30

AndrInsider
10.07.2018
16:51:36

енот
10.07.2018
16:52:13

Евгений
10.07.2018
16:53:17

AndrInsider
10.07.2018
16:54:08

Grigorii
10.07.2018
17:08:57
Добрый день.
Только начал работать с тестированием (mocha), подсважите, пожалуйста.
Делаю
assert.throws(someFunction)
someFunction вызывает исключение, но он говорит, не что "ок, да, вылетело исключение", а говорит "кошмар, тут исключение, ошибка!"
Что не так?)

Google

Grigorii
10.07.2018
17:09:23

Эникиев
10.07.2018
18:02:18
Как с http и url узнать запрошенный домен?
Т.е у меня выводит страницы, мне нужно чтобы выводило отдельную страницу для отдельного домена.

Vadim
10.07.2018
18:18:06
Ребят, добрый вечер. Кто подскажет чем лучше реализовать реальную задачу на проэкте. У пользователя.есть возможность покупать время в приложении. И в следствии этого он может, в зависимости от этого времени, полтзоваться ним. Купил час, час и есть доступ. Меня именно интересует работа с этим временм. Как его лучше организовать. Возможно есть какие то модули?

Vitaliy
10.07.2018
18:23:19
moment

Sars
10.07.2018
18:23:22

Boris
10.07.2018
18:25:00

Grigorii
10.07.2018
18:25:42

Boris
10.07.2018
18:26:11
не за что. ты сам написал что функцию нужно передать. а ты ее вызываешь...

Grigorii
10.07.2018
18:26:51
Туплю под конец дня)

Vadim
10.07.2018
18:27:40
За момент я знпю. Тут не в этом проблема. Мне.бы в 3 х словах понять, как.лучше организовать архитектуру данной возможности
Хранить запись в базе и при каждом запросе чекать время. Или как то подругому

Kolya
10.07.2018
18:29:06
Ребят, кто-то делал интеграцию nodejs с AmoCRM? Есть пару вопросов

A.
10.07.2018
18:38:34
Хранить запись в базе и при каждом запросе чекать время. Или как то подругому
Используй отложенные задачи.
Посмотри Bull/Kue.
Как пользователь приобретает единицу «время» (час пользования сервисом), создаётся задача на час в Redis’е (разберёшься при чтении документации Bull или Kue) и также происходит отметка в базе данных (или где у тебя данные хранятся). К примеру activate: true.
Отложенная задача, по наступлению момента действия устанавливает отметку activate: false у пользователя.
Остальное наверное логично и понятно.

[Anonymous]
10.07.2018
18:42:51
Предложения по работе сюда можно писать?

Dzmitry
10.07.2018
18:43:19

[Anonymous]
10.07.2018
18:43:33
А куда лучше опубликовать?
Не подскажите, если не сложно

Dzmitry
10.07.2018
18:44:54

?
10.07.2018
18:45:16

Google

Phoenix»
10.07.2018
19:47:45
Ребята, кто работал с Puppeteer? Можно ли прокси настроить как либо иначе кроме --proxy-server?

Vitaliy
10.07.2018
19:54:42

Phoenix»
10.07.2018
19:55:29

Vitaliy
10.07.2018
19:56:18
Проще написать свой прокси и у него поменят

Phoenix»
10.07.2018
19:57:34

Vitaliy
10.07.2018
19:58:32
Ну тогда смотри за сам хромиум, там можно задать
На сайте гуглов

Никита
10.07.2018
19:59:35
Парни, нужна помощь по теме web-scraping'a. В общем использую superagent, авторизуюсь на сайтец, и, при попытке добавления в корзину товара выкидывает 403, мол, я - бот. Оказалось, что клиентский js добавляет 15 куки, но js обфусцирован. Таким образом, есть вариант использовать headless-браузер, но ситуация такая, что могу использовать только такие, как zombie и chimera, то есть написанные на js'e, без всяких selenium'ов и тп. Но ни зомби, ни химера не работают нормально и нет нормальной документации. Что можно сделать? Может кто знает ещё модули, которые эмулируют браузер или какое-либо другое решение данной проблемы?)

Phoenix»
10.07.2018
20:00:21

Vitaliy
10.07.2018
20:01:03
Парни, нужна помощь по теме web-scraping'a. В общем использую superagent, авторизуюсь на сайтец, и, при попытке добавления в корзину товара выкидывает 403, мол, я - бот. Оказалось, что клиентский js добавляет 15 куки, но js обфусцирован. Таким образом, есть вариант использовать headless-браузер, но ситуация такая, что могу использовать только такие, как zombie и chimera, то есть написанные на js'e, без всяких selenium'ов и тп. Но ни зомби, ни химера не работают нормально и нет нормальной документации. Что можно сделать? Может кто знает ещё модули, которые эмулируют браузер или какое-либо другое решение данной проблемы?)
Юзай chrome headless ну или splash какойто всякие зомби очень легко паляться


Alexander
10.07.2018
20:02:39
Парни, нужна помощь по теме web-scraping'a. В общем использую superagent, авторизуюсь на сайтец, и, при попытке добавления в корзину товара выкидывает 403, мол, я - бот. Оказалось, что клиентский js добавляет 15 куки, но js обфусцирован. Таким образом, есть вариант использовать headless-браузер, но ситуация такая, что могу использовать только такие, как zombie и chimera, то есть написанные на js'e, без всяких selenium'ов и тп. Но ни зомби, ни химера не работают нормально и нет нормальной документации. Что можно сделать? Может кто знает ещё модули, которые эмулируют браузер или какое-либо другое решение данной проблемы?)
puppeteer и вперед

Vitaliy
10.07.2018
20:02:59
+

Phoenix»
10.07.2018
20:03:22
еще phantomjs но там дока супер хуевая

Дмитрий
10.07.2018
20:03:41
Фантом уже давным давно всё

Yashko?
10.07.2018
20:03:49
phantomjs уже все, юзайте headless chrome

Eugene
10.07.2018
20:03:58

Phoenix»
10.07.2018
20:04:01

Alexander
10.07.2018
20:04:26

Yashko?
10.07.2018
20:04:30
как и программам на COBOLе, но это не значит что надо на нем писать

Google

Phoenix»
10.07.2018
20:07:14
ну ладно((
но все равно
вебскрейпинг без прокси ну такое
а в хроме они через жопу

Dzmitry
10.07.2018
20:07:48

Никита
10.07.2018
20:07:52
Я же написал, что могу использовать только решения, написанные на js и для которых не нужно ничего больше

Phoenix»
10.07.2018
20:08:27

Никита
10.07.2018
20:08:52
Т.к. потом придется это все через PKG гнать в бинарник
Есть какие-нибудь варианты?
Про пюпитр давно уже знаю, даже использовал его

Phoenix»
10.07.2018
20:09:41
вырезаешь функции для кук
генерируешь/получаешь нужными запросами

Admin
ERROR: S client not available

Никита
10.07.2018
20:09:46
Но для него надо хромиум выкачивать

Phoenix»
10.07.2018
20:10:09

Никита
10.07.2018
20:11:16
Ха-ха(
Там js'а клиентского штук на 10 строк
И как обойтись запросами?)

Phoenix»
10.07.2018
20:12:14
единственное если время затрачееное на обход проверок кук будет больше не сопоставимо со временем работы собирателя твоево)
скорее всего нужна только какая-то 1 кука

Никита
10.07.2018
20:13:23
Ну, пошли в лс
Я тебе расскажу, тут не будем засорять

Gleb
10.07.2018
21:40:05
народ, вопрос для тех кто не спит в пол первого ночи=)
есть два массива обьектов:
[{lable1:1, lable2:2, a:4, b:5}, {lable1:3, lable2:2, a:2, b:6},{lable1:5, lable2:4, a:4, b:5}] and
[{lable1:1, lable2:2, a:3, b:1},{lable1:6, lable2:2, a:4, b:5}]
нужно их смерджить в один массив по лейблам. Тоесть если лейблы lable1 & lable2 одинаковые, то данные в соответствующем обьекте первого массива заменить данными из обьекта со второго массива, а если определенное сочетание лейблов присутствует обьекте второго массива но отсутствует в любом з обьектов первого массива, то этот обьект нужно просто слить в первый массив.
Я уже бошку свернул, но что-то хрень только выходит=)

Google

Gleb
10.07.2018
21:43:16
сори вот так верно

Евгений
10.07.2018
21:45:09
народ, вопрос для тех кто не спит в пол первого ночи=)
есть два массива обьектов:
[{lable1:1, lable2:2, a:4, b:5}, {lable1:3, lable2:2, a:2, b:6},{lable1:5, lable2:4, a:4, b:5}] and
[{lable1:1, lable2:2, a:3, b:1},{lable1:6, lable2:2, a:4, b:5}]
нужно их смерджить в один массив по лейблам. Тоесть если лейблы lable1 & lable2 одинаковые, то данные в соответствующем обьекте первого массива заменить данными из обьекта со второго массива, а если определенное сочетание лейблов присутствует обьекте второго массива но отсутствует в любом з обьектов первого массива, то этот обьект нужно просто слить в первый массив.
Я уже бошку свернул, но что-то хрень только выходит=)
Вот у тебя есть два массива, покажи что должно получиться, а то ты тяжело описал.

Никита
10.07.2018
21:45:15
Gleb Заведи индекс и проиндексируй по нему.

Евгений
10.07.2018
21:45:34

Gleb
10.07.2018
21:45:48

Никита
10.07.2018
21:46:09
Сделай мап из, например, ${label1}:${label2} в элементы одного из массивов. Пройди по второму и действуй в зависимости от того, есть ли ключ в мапе.
Можно и без индекса, но это надо оба массива отсортировать по ключам и параллельно по ним бежать.
Примерно как мердж с сохранением упорядоченности работает.
Это потеряет порядок и будет медленнее (так как требует сортировки).

Евгений
10.07.2018
21:53:45

Gleb
10.07.2018
21:54:35
Вот у тебя есть два массива, покажи что должно получиться, а то ты тяжело описал.
const arr1=[
{lable1:1, lable2:2, a:1, b:2},
{lable1:2, lable2:1, a:2, b:1},
{lable1:3, lable2:3, a:3, b:3}
]
const arr2=[
{lable1:1, lable2:2, a:5, b:6},
{lable1:4 lable2:4, a:6, b:6},
]
итог
const arr3=[
{lable1:1, lable2:2, a:5, b:6},
{lable1:2, lable2:1, a:2, b:1},
{lable1:3, lable2:3, a:3, b:3},
{lable1:4 lable2:4, a:6, b:6}
]
вот так
повторю, если во втором массиве есть обьекты с лейблами === обьектам с лейблами из первого, то нужно их заменить, а если во втором массиве есть обьекты с лейблами которых в первом нет, то нежно их добавить
если бы нужно было строить предикат по однуму лейблу, то вопрососв бы небыло, но 2 === проблемма=)

Никита
10.07.2018
22:01:04
Gleb Стоп. Массивы уже отсортированы по лейблам, что ли?

Gleb
10.07.2018
22:01:17
нет

Никита
10.07.2018
22:01:18
Если да, то можно в один прогон без индекса, см. выше.
Если нет, то либо сортировать, либо индекс, либо квадрат кмк.