
ivan
14.09.2018
20:38:30
Кто-то читал это занимательно чтиво?
Помогает "Работать с унаследованным кодом"?
http://sd.blackball.lv/library/Effektivnaja_rabota_s_unasledovannym_kodom_Maikl_Fizers_2009.pdf

Aragaer
14.09.2018
20:41:08
я читал
очень доволен
реально очень рекомендую

Google

?? Eugene
14.09.2018
20:41:41
м, круто, скачаю =)

Проксимов
14.09.2018
20:41:55

Aragaer
14.09.2018
20:42:01
у меня она правда в оригинале и бумажная, поэтому про перевод не скажу

Проксимов
14.09.2018
20:43:34
Бесструктурное приложение в процедурном стиле, состоящее из одних вызовов апи, с убийственной зависимостью от библиотек и покрытое мешающими тестами

ivan
14.09.2018
20:49:30
Ну у меня скорее
Код недостаточно понятен для его изменения
А ещё спагетти

Aragaer
14.09.2018
20:53:01
вобщем физерс предлагает вполне адекватные и практичные способы, как с этим что-то можно сделать
я сам его недавно начал перечитывать заново, потому что была дискуссия, что мол "там сплошная вода" - "а мне вроде понравилось, пойду перечитаю более вдумчиво"

ivan
14.09.2018
20:55:37
Вот я тоже к подобным книгам с опасениям отношусь
С опасением, что там вода

Aragaer
14.09.2018
20:56:37
ну вот я сейчас вдумчиво перечитываю и точно могу сказать, что первая часть по делу
вторая часть там самая большая, но первые несколько пунктов опять же по делу
скажем так, если кто-то не видел настоящего говнокода и легаси, он может сказать "да ну, фуфло, он тут пишет хрень, так не бывает"
а тот, кто всю жизнь варится в таком легаси, может сказать "да ну, фуфло, мы всю жизнь так делали и чо он ругается"

Google

Aragaer
14.09.2018
20:58:12
но когда успел посмотреть разное и есть с чем сравнить, то как раз есть вполне конкретные рецепты
я вон месяц назад пытался пару классов в легаси коде слить в один
простой же рефакторинг. Делал его по наитию - закопался. Взял фаулера, сделал четко by the book - никаких затыков.

?? Eugene
14.09.2018
20:59:23

ivan
14.09.2018
21:15:15

Vyacheslav
14.09.2018
21:17:48
Ребят, есть какой нибудь вариант по-быстрому ограничить кол-во http запросов от одного хоста на джанго дев-вебсервере?

ivan
14.09.2018
21:19:13
Что значит 'по-быстрому'?
Типо, чтобы подключить это к проекту можно было легко?

Vyacheslav
14.09.2018
21:22:06
это значит что нас досят, а сервер должен жить. никто не думал, что кому-то есть дело до гаражного вебсайтика

Eldar
14.09.2018
21:23:15

ivan
14.09.2018
21:23:29
https://github.com/jsocol/django-ratelimit
Возможно это

Cykooz
14.09.2018
21:23:39
Такое лучше не в джанге делать, а уровнем выше, хотя бы в nginx (там вроде можно делать какие-то ограничения). А если запрос дошёл до джанги - это уже плохо.

[Anonymous]
14.09.2018
21:25:17
был взят датасет эмоций в голосе
каждый аудиофайл пропущен через скрипт и посчитаны
-средняя длительность гласных
-громкость
-амплитуда
в итоге получился массив из строк
в каждой строке 4 элемента
1 название эмоции и 3 элемента чисел
как можно проанализировать это и построить какой то фильтр?

Vyacheslav
14.09.2018
21:25:42

Cykooz
14.09.2018
21:26:28
Дев сервер локально запускают, зачем вы его в интернет выставили?
Он вообще для этого не годится

ivan
14.09.2018
21:29:32

?? Eugene
14.09.2018
21:39:46

Ирод Раковой
14.09.2018
21:40:55
Какое портфолио должно быть у Джуна ?

Google

Vyacheslav
14.09.2018
21:48:19
Он вообще для этого не годится
Понятное дело, но внятного и простого объяснения как недоношенному студенту развернуть джанго на нормальном вебсервере без любви с venv и.т.д. не нашлось

[Anonymous]
14.09.2018
21:58:41
И норм

Александр
14.09.2018
21:59:05
подскажите, можно ли сделать копию двумерного списка с помощью срезов?
без цикла
и рекурсии соответственно)

Vyacheslav
14.09.2018
22:01:11

Александр
14.09.2018
22:01:52
в одну строку присваиванием нельзя?

Arseny
14.09.2018
22:04:01
list1 = list2[:], не подскажу насчёт двумерных

Александр
14.09.2018
22:04:27
mat = matr[:][:], так не получается почему-то

Dk
14.09.2018
22:06:45

RITALIN
14.09.2018
22:10:27
Добрый вечер мужики можете подсказать пожалуйста как я бы смог научить программированию на Андроиде просто я заключённый где есть уйма время и хочу саморазвиваться

?? Eugene
14.09.2018
22:12:43
И клавиатуру нормальную установи (hacker's keyboard например)

Ирод Раковой
14.09.2018
23:04:56

Dmitri
15.09.2018
00:21:50
То ли я туплю, то ли лыжи не едут.
есть вот такой статик в классе DbManager
@staticmethod
def set_stage(user_id, stage):
con, cur = create_con()
cur.execute('update user set stage = ? where user_id = ?', (stage, user_id))
con.commit()
close_con(con, cur)
Все до жути просто
Вызываю вот так
DbManager.set_stage(message.chat.id, 'ask_a_question')
Итог: изменений в таблице и базе вообще нет.
Путь к базе прописан правильно.
Никаких ошибок не выдает.
Делаю то же самое через консоль - все работает.
В чем может быть проблема?

Denis
15.09.2018
00:25:47

Скрудж
15.09.2018
00:26:45
Денис иди спать

Admin
ERROR: S client not available

Google

Скрудж
15.09.2018
00:26:55
Баиньки пора

Dmitri
15.09.2018
00:27:38
Самое смешное, был уверен что есть, потому что тесты провожу с двух акков, и айди в базе всего 2. Видимо, когда-то заходил с 3его)

Mах
15.09.2018
00:40:58
Всем привет.
Занимаюсь парсингом pra.in.ua - вылетает бан по CSRF-токену. Не совсем понимаю, как обойти.
Попробовал такой вариант, не работает:
from requests import Session
URL = 'https://pra.in.ua/en/login'
client = Session()
client.get(URL)
csrftoken = client.cookies['XSRF-TOKEN']
login_data = dict(username='login', password='pwd', csrfmiddlewaretoken=csrftoken, next='/')
r = client.post(URL, data=login_data, headers=dict(Referer=URL))
print(r.text)


BLVCK
15.09.2018
06:00:45
ребят, помогите пожалуйста.. данная функция вызывается в большом колличестве потоков. я новичок и единственное, что я придумал в плане рандомного подбора прокси описано в этом примере... проблема в том, что если выбрасывается исключение, блок 'try' будто не выполняется по новой... либо не подбирает заново рандомный прокси и поэтому не выполняется... не понимаю как это фиксить =(
def individual_check(id):
try:
rndd = random.choice(proxy_list)
proxy_list.remove(rndd)
url = 'https://www.customlink.com/api/product/purchase.json?id={0}'.format(id)
r = requests.get(url, headers=hdr, timeout=8.0, proxies={'https': rndd})
data = json.loads(r.text)
if r.status_code == 200:
real = data['body']['items'][0]
prices[real['name']] = real
print(real['name'] + ' ' + str(real['price']))
except requests.exceptions.ProxyError:
print('Proxy Error')
except requests.exceptions.Timeout:
print('TimeOut')
except Exception as e:
print(str(time.strftime("%H:%M:%S", time.localtime())) + ' individual_check: ', e)
гист с кодом
https://gist.github.com/x-Sonnet/01a2413718cae198563d648bd0cef5ae


ThePanaceya
15.09.2018
06:48:12


ed
15.09.2018
06:48:42
Привет, народ, смотрю возможности по записи звука.
Необходимо обрабатывать "звук с динамиков" в фоне, например во время скайп звонка (распознавание слов)
В основном найденные решения сводятся к тому, чтобы сделать виртуальную карту звуковую и в нее объединить и динамик и микрофон.
Но мне не нужен звук микрофона.
Подскажите плиз как обрабатывать только звуковой выход?
хоть на каком-нибудь языке)

BLVCK
15.09.2018
06:49:10

Andy
15.09.2018
06:49:41

BLVCK
15.09.2018
06:50:32
так а что делать-то? как вызвать выполнение блока try с новой проксёй?

Andy
15.09.2018
06:50:58

ThePanaceya
15.09.2018
06:51:07
Можешь вызвать еще раз функцию в случае исключения (плохие советы )

Andy
15.09.2018
06:51:10
или for по списку проксей
а если нашел прокси то делать break чтобы выйти из лупа или цикла

BLVCK
15.09.2018
06:52:25
спасибо

Dmitriy
15.09.2018
07:01:53
Доброго времени суток. Функция ctypes, при работе с dll возвращает числа, как их расшифровать что бы получить реальные значения возвращаемые библиотекой?)))

BLVCK
15.09.2018
07:15:17
while
написал вот так, теперь какая-то беда с многопоточностью, всё выполняется линейно
https://gist.github.com/x-Sonnet/01a2413718cae198563d648bd0cef5ae

Google

Andy
15.09.2018
07:16:07

Mах
15.09.2018
07:16:35

BLVCK
15.09.2018
07:18:04
чет я тогда не понял, а как должно?
функция в гисте вызывается другой функцией с созданием нового потока для того чтобы делать быстро много запросов. с приминением лупа многопоточность просто пропала
у меня есть 100 разных "id"
к ним надо применить эту функцию раз в 2 сек к каждому
проблема в том, что я не получаю в итоге 100 результатов из-за того, что попадаются плохие прокси

Nikolay
15.09.2018
07:23:39
Заплати за прохи
И все будет хорошо

BLVCK
15.09.2018
07:23:57
у меня платные