SarcasmIO
👍
mr.
Ура мне надо написать парсер с использованием ларавельки, надеюсь узнать много нового
Парсер на РНР? Пологаю, основное что ты узнаешь, что нужно было брать ноду)
mr.
Там и cheerio и async и phantomjs.
mr.
Первый это привычный JQuery стиль для селекторов, второй многопоточность, третий для случаев когда надо JS исполнять, например если цель написана на каком-нибудь реакте.
Konstantin
Москва
переезд обязателен ?
pa[aad
Там и cheerio и async и phantomjs.
насчет этих phantomjs, spookyjs я сомневаюсь в последнее время, много проблем я повидал когда стандартный код просто кушает всю память при запросе, просто куча утечет и много грязных хаков и это происходит не всегда
mr.
Прикольно , но у меня есть пару дней , а учить ноду нет времени
Поверь, там учить не много нужно для начало, в ЛС могу примеров скинуть как оно на надо.
Dmitry
парсер пишут на фреймворке, дожили )))
mr.
парсер пишут на фреймворке, дожили )))
Хоть кто-то уловил посыл рационализма. Дима, спасибо, что ты есть.
Vladimir
если надо спарсить немного, а времени всего пару дней, то пхп вполне себе подойдет
pa[aad
Ну так для статических сайтов просто request'а достаточно жеж.
я ж и говорю, spookyjs выжирал всю память и это было рандомно
pa[aad
Прикольно , но у меня есть пару дней , а учить ноду нет времени
symfony/dom-crawler отличная штука если сайт статика, а не на js
mr.
если надо спарсить немного, а времени всего пару дней, то пхп вполне себе подойдет
Шатал я эти простыни. Говоришь для пыхи есть либы для имплементации JQuery селекторов, ну-ка, покажи, может я такой дурачек не умею искать...
Vladimir
php-html-parser, phpQuery, simplehtmldom
Maksim (Ellrion)
и упомянутый выше symfony/dom-crawler тоже в JQ стиле умеет
mr.
paquettg/php-html-parser для несложного ок phpQuery это либа которая давно не поддерживается, давно работал с ней, много кода нужно писать для простых задач simplehtmldom низкоуровневый апи, можно и регулярками тогда уж.
mr.
и упомянутый выше symfony/dom-crawler тоже в JQ стиле умеет
Да, он вполне не плох если сайт - статика. Тогда фреймворк тут зачем)
mr.
к бате Фабьену тоже притензии будут?)
Да это не претензии... Рассуждения что ли. Я за конструктивный диалог и пожалуй соглашусь что немного резко заявил свою позицию. Просто была боль когда парсеры именно на РНР делал, попробовал на ноде и прозрел, что это можно делать просто и весело.
SarcasmIO
может предполагается парсер в какой-то проект на ларавеле и ждут реализацию с помощью артисан команд, жобов и тд
mr.
Резюмирая, спарсить простой статический сайт в 1 поток можно на РНР, чтобы не плодить технологии. Если нужно что-то сложнее, асинхронщина, то либо взять ноду, либо как сообщением выше через джобы и сбоку прикрутить фантом, если сайт "реактивный".
Dmitry
Да, в ЛС могу кинуть.
кидай, интересно посмотреть
Maksim (Ellrion)
а фантому не пофиг кто его вызывает? его задача страничку отрендерить и контент отдать в случае парсера или еще что то?
Andrey
DOMDocument не упомянули
Luka
Подскажите про where db
Luka
$professionals = DB::table('professionals') ->where('factor_cat_1', 'like', 'yes') ->where('value_from_cat_1', '<=', $request->theme1) ->where('value_before_cat_1', '>=', $request->theme1) ->where('factor_cat_2', 'like', 'yes') ->where('value_from_cat_2', '<=', $request->theme2) ->where('value_before_cat_2', '>=', $request->theme2) ->where('factor_cat_3', 'like', 'yes') ->where('value_from_cat_3', '<=', $request->theme3) ->where('value_before_cat_3', '>=', $request->theme3) ->get();
Luka
меня интересует такая конструкция, как правильно указывать, чтобы вывело значения, если в factor_cat_1 и factor_cat_2 есть yes, а в factor_cat_3 там нету
Luka
Не могу понять, как лучше делать. Надо перебрать кучу записей, выбрать все строки где содержится yes и в них сравнить показатели
🎄Victor
Кто нибудь юзал вот такое? https://foundation.zurb.com/emails.html
Anonymous
всем привет. при работе с websocet канал лучше создавать для каждого поста отдельно или для всей ленты сразу, а потом через js циклом искать данные которые изменились?
mr.
Смотря что ты делаешь
Listar
Где я ошибаюсь что ничего не работает ) !?
Listar
т.е. если без цикла сохроняю, то все окей, как только начинаю чере foreach перебирать то все сразу падает (
Listar
1 же файл в реквесте .
Т.е. если их несколько то все ок работать будет !? >...> !?
Listar
нит
Listar
Даже если 2 и больше файла, все равно не работает
Listar
или я не понял чего ((
Dmitriy
https://stackoverflow.com/a/30028152
Listar
ty, пойду гляну
Listar
Nope, все равно не хочет сохронять, и пустой массив с именами оттдает
Макс
У тебя жеж в форыче в переменной значения тупо перезаписывается, не?
Макс
Какой резон в переменной path если в ней ток последний результат работы цикла
Макс
Сделай хотя бы $path[]=
Illia
👆дело говорит
Sultan
Всем привет. Такой вопрос, на локальном сервере чтобы включить Storage прописываешь php artisan link. Но почему-то на рельном хостинге файлы из Storage не появляются - ошибка 403. Из-за чего это, на рельном сервере для этого нужно что-то изменить? Можете дать совет, пожалуйста
Andrey
Sergey
Как контроллер связать с моделью?
Anonymous
Как контроллер связать с моделью?
В этом и прелесть модели, что ее можно использовать где угодно, смысл их связывать?
ThunderAL
есть MyModel { hasMany(EvemtModel::class) } как мне получить My Model с сортировкой по количетву в нём EvemtModel и Лимитом, допустим на 6? MyModel::limit(6)->{has('events')+events.count ????}
ThunderAL
Ответ https://stackoverflow.com/questions/24208502/laravel-orderby-relationship-count#40021201 MyModel::withCount('events')->latest('events_count')->limit(6)
Sultan
Привет. Как пагинировать связь hasMany? Например, мне нужно для category->products. Может кто сталкивался?
Евгений
$category->products()->paginate(30)
T.A
реябта, всем привет. копаюсь в чужом коде. помогите понять этот метод
T.A
нужно переписать так, чтобы больше не ассоциировался с юзером а с диалогом
T.A
в таблицу complaints добавил колонку dialog_id и рилэйшены сделал. (complaints belongs to dialog)
Firdavs
Привет. Какую админку посоветуете? voyager пробовал, не понравился. Или лучше самому сделать?
Alexey
crudboost глянь
Sultan
sleeping owl
Его удобно использовать? Я один раз посмотрел документацию, там все замудренно. Мне показалось Voyager более удобен
T.A
реябта, всем привет. копаюсь в чужом коде. помогите понять этот метод
пожалуйста помогите сохранить new Complaint так, чтобы dialog id был равен id переменной dialog которая в самом начале
Firdavs
sleeping owl
тогда уж лучше voyager
mr.
Привет, есть кусок кода с легаси https://pastebin.com/HZcmW21D (ВНИМАНИЕ, слабонервным не смотреть) У кого-нибудь есть идеи как это можно переделать?)
T.A
реябта, всем привет. копаюсь в чужом коде. помогите понять этот метод
new Complaint($request->only('comment')))->reporter()->associate($user)->dialog()->associate($dialog) так правильно будет? если продолжить цепочку
vAlfred88
тогда уж лучше voyager
на вкус и цвет фломастеры не вкусные
mr.
Посмотри функцию array walk
Хм... Пока что не понял как array_walk можно упростить...
T.A
просто скажите. это правильный код?
Maksim (Ellrion)
Привет, есть кусок кода с легаси https://pastebin.com/HZcmW21D (ВНИМАНИЕ, слабонервным не смотреть) У кого-нибудь есть идеи как это можно переделать?)
Фигани хелпер рекурсивный для создания матрицы размещений. Потом уже ее в одном цикле обойдешь и имплоидом построишь ключи
mr.
просто скажите. это правильный код?
Смотря что есть критерий правильности кода?)
T.A
Смотря что есть критерий правильности кода?)
цепочка сохранения нового комлэйнта правильная или нет?