Kop
кстати, у меня таск есть. Есть задача которая долго в селениуме выполняется и ее результат ожидает пользователь сайта, сейчас использую селери и рабит, как лучше?
Рустам
Ну брокер это все в редисе держит
Рустам
все равно у тебя небось БД для хранения результатов тасков и так есть какая-то
А, да, у меня в постгресе хранится, чем глобально дело кончилось - удалась задача или нет
Tishka17
тогда вообще непонятно в чем вопрос
Tishka17
статус уже хранишь, очередь есть.
Tishka17
осталось только выкинуть прослойку и просто читать задачи из очрееди
Рустам
Очереди нет, она была, но оказалась говном
Vladyslav 🇺🇦🇪🇺
Все чаще убеждаюсь, что моя затея собрать свой легковестный аналог селери, встраеваемый в три строки не так уж плоха
Рустам
осталось только выкинуть прослойку и просто читать задачи из очрееди
Как самому ее сделать? Как реализовать, чтобы несколько человек туда смогли отдавать задания?
Vladyslav 🇺🇦🇪🇺
Шта
Рустам
Есть сайтец, он умеет делать кой чего, но в режиме "один пользователь за раз". Если несколько человек одновременно нажали кнопку - делаем тому, кто первый нажал, потом второму, потом третьему, потом рапортуем, что в очереди никого нет и снова ждем.
Tishka17
там никакой магии
Tishka17
с одного конца слушатели. С другого писатели
Tishka17
Ну брокер это все в редисе держит
редис у тебя и есть брокер по сути. А то что ты назвал брокером - надстройка над брокером, фремворк для тасков
Nikita
чё ему не нравится то? sqlalchemy.exc.StatementError: (builtins.TypeError) SQLite Time type only accepts Python time objects as input. [SQL: INSERT INTO user_hours_table (user_id, machine_id, month, hours) VALUES (?, ?, ?, ?)] [parameters: [{'month': datetime.datetime(2017, 8, 1, 0, 0), 'machine_id': 1, 'user_id': 1, 'hours': datetime.timedelta(seconds=4374)}]]
Sergey
Всем привет! Помогите пожалуйста с Pandas, первый раз её трогаю. Есть дата-фрэйм, в нём столбцы и значения. Хочу отфильтровать только те записи, в которых в столбце Respondent.Id не содержится 'pil'. Делаю вот так: new_df = old_df['Respondent.Id'].str.contains('test')==False Никаких ошибок он не выкидывает. Но и никаких действий не производит, записи не фильруются. Как правильно запрос оформить?
Daniil
Отрицание
Sergey
Понял
Sergey
Спасибо товарищи
Sergey
new_df = df[~df['Respondent.Id'].str.contains(word)] вроде как то так
А если падает ошибка bad operand type for unary ~: 'float'? При этом в колонке (respondent.id) точно текст
Дмитрий
Куда передвигались?
Максим
new_df = df[df["Respondent"].str.contains(word) == False] так попробуй
Über
https://pastebin.com/eyep3kG4 Как эту кучу реплейсов сократить и применять их парой слов
Über
Сомневаюсь что метод можно в переменную засунуть
Über
Либо чё гуглить
Vladyslav 🇺🇦🇪🇺
Variable = method()
Über
В скобках эту кучу реплейсов?
Vladyslav 🇺🇦🇪🇺
В скобках эту кучу реплейсов?
В скобках ароументы которые принимает метод
Vladyslav 🇺🇦🇪🇺
То что метод возвращает будет результатом переменной
Über
Как их записать примерно
Über
Я полный нуб
Vladyslav 🇺🇦🇪🇺
Vladyslav 🇺🇦🇪🇺
Я полный нуб
@ru_python_beginners
Ruslan
Работаю с либой "requests". Есть урл для OAuth, по нему перехожу в браузер, он меня редиректит как надо. Отправляю запрос на этот же урл через requests.get и нигде не могу найти урл, на который меня редиректило в браузере. Что я могу делать не так..?
Семен
Может редирект происходит посредством клиента?
Семен
В джаваскрипте срабатывает
Семен
Попробуй глянуть тело страницы на которую делаешь запрос. Есть ли там js
Семен
response = requests.get("url") Print(response.text)
Я думаю там проблема в том, что редирект не произошёл т.к. он вызывается джаваскриптом
Семен
При том
Семен
Если у тебя скрипты на клиенте выполняются ты как через requests получишь их результат?
Семен
Тут та же проблема может быть
Семен
Это просто предположение
Vladyslav 🇺🇦🇪🇺
Какие скрипты на клиенте? При чем тут это
Семен
-_-
Vladyslav 🇺🇦🇪🇺
Работаю с либой "requests". Есть урл для OAuth, по нему перехожу в браузер, он меня редиректит как надо. Отправляю запрос на этот же урл через requests.get и нигде не могу найти урл, на который меня редиректило в браузере. Что я могу делать не так..?
Ты в браузере имеешь сессию, которую бекенд сайта на который ты обращаешься - редиректит тебя куда хочет Через requests.get ты шлешь один запрос, получаешь ответ и заканчиваешь работу. Ты не ждешь редиректов
Ruslan
Попробуй глянуть тело страницы на которую делаешь запрос. Есть ли там js
Не, там дичь какая-то, вообще пусто. Это если я правильно всё сделал (убрал параметры из запроса)
Vladyslav 🇺🇦🇪🇺
Потому через requests.get ссылку которая возвращвется при редиректы ты и не увидишь Ты увидишь первый ответ сервера
Ruslan
response = requests.get("url") Print(response.text)
Тут чё-то другое находится, не тот урл
Vladyslav 🇺🇦🇪🇺
Что пишет response.text ?
Vladyslav 🇺🇦🇪🇺
А не стопе
Vladyslav 🇺🇦🇪🇺
Какой респонс тест
Vladyslav 🇺🇦🇪🇺
Это ж страница
Vladyslav 🇺🇦🇪🇺
Что за изврат
Ruslan
Что пишет response.text ?
HTML с какой-то шляпой
Vladyslav 🇺🇦🇪🇺
HTML с какой-то шляпой
Да, щас Я перепутал чутка
Dogma
HTML с какой-то шляпой
Покажи статус запроса
Dogma
Если 3хх то ищи урл в заголовках
Ruslan
Dogma
Хм, чужая по хистори у тебя он уже прошёлся по нужному урлу
Dogma
Хотя хуй его помнит как в реквестах такое обрабатывается
Ruslan
Dogma
По-моему нужно явно передать параметр в get что бы реквестс ходил сам по редиректам
Ruslan
Сдаётся мне, что на стороне сервера авторизации есть некое прокси. Я делаю запрос на один адрес, ожидаю другой адрес, а там вообще третий оказывается
Vladyslav 🇺🇦🇪🇺
r = requests.get('url') Print(r.headers['link']) Так попробуй
Ruslan
Ruslan
Это так)
Ruslan