@ru_python

Страница 9362 из 9768
Tishka17
18.06.2019
10:38:45
RO сутки

Dima
18.06.2019
10:38:57
Суток мало

Tishka17
18.06.2019
10:39:06
я добрый

Dima
18.06.2019
10:39:15
?

Google
Tishka17
18.06.2019
10:41:42
кажется, я случайно забанил =D

в общем, я добрый, но телеграмом пользуюсь плохо

Alex
18.06.2019
10:48:46
#selenium #xpath #try Вопрос: Есть элемент на веб-странице , находимый (или не находимый по х-пазу). У елемента может быть (или не быть) атрибут 'data-visible' - соответсвенно он может быть 'true' или 'false' пытаюсь определить видимость объекта - если он есть, берем атрибут 'data-visible' , если атрибута нет - считаем его видимым. Почему вот такой код возвращает False, когда атрибут 'data-visible' отсутсвует: if i != '' and visible != vcheck: vi = 'false' xpath = f'//*[@id="{i}"]' #print (xpath) element = time_xp(context, xpath) #если элемент есть: if element is not None: vi = 'true' try: vi = element.get_attribute('data-visible') except: vi = 'true' if vi == 'true': visible = True else: visible = False

Maxym
18.06.2019
10:49:40
Здравствуйте, помогите с авторизацией в Гугл. Можно ли авторизоваться через Python имея логин и пароль от почты?

Alexander
18.06.2019
10:50:06
Есть ли смысл параллелить скачивание большого кол-ва гигабайтных видео с Ютуба? Кажется, что прироста в скорости не должно быть

koder
18.06.2019
10:51:35
Есть ли смысл параллелить скачивание большого кол-ва гигабайтных видео с Ютуба? Кажется, что прироста в скорости не должно быть
Есть. Попробуй пару youtube-dl пару в параллель. Просто один поток tcp не может нормально сьесть весь канал

По крайней мере если очень сильно не покрутить размеры буферов и параметры тсп стека

Ruslan
18.06.2019
11:19:18
ЧЯДНТ (именно одновременное пополнение и получение не удается совместить) def p(q, pushed, t): for i in range(20): sleep(.2) print(t, i) q.put(i) print('Event: pushed') pushed.set() def g(q, pushed, t): while not pushed.isSet() or not q.empty(): sleep(.5) print(t, q.get()) if __name__ == '__main__': # mp.set_start_method('spawn') pushed = Event() q = mp.Queue() p0 = mp.Process(target=p, args=(q, pushed, 'P_Pusher')) p1 = mp.Process(target=g, args=(q, pushed, 'P_Puller1')) p2 = mp.Process(target=g, args=(q, pushed, 'P_Puller2')) ...start...join...

koder
18.06.2019
11:33:47
откуда event импортируется?

@ruslan001 ^

koder
18.06.2019
11:35:31
если о коде, то лучше, наверное, ложить в очередь массив событий, а не по одному - тогда не будет мороки с евентом

Google
Ruslan
18.06.2019
11:38:43
Я знаю что не так! Имена переменных - непонятное УГ
это черновик для проверки того что мне нужно

koder
18.06.2019
11:41:08
threading
вот и ответ. а у тебя процессы, у каждого будет свои независимый event

https://docs.python.org/3/library/multiprocessing.html#multiprocessing.Event

Ruslan
18.06.2019
11:42:16
koder
18.06.2019
11:42:59
если ты накидываешь элементы в очередь и пытаешься их читать оттуда только по евенту, то куда проще будет накидывать их в массаив и ложить массив в очередт

а с другой стороны тупо делать q.get()

и выкинуть евент нафиг

Ruslan
18.06.2019
11:44:25
если ты накидываешь элементы в очередь и пытаешься их читать оттуда только по евенту, то куда проще будет накидывать их в массаив и ложить массив в очередт
нет, евент нужен чтобы раньше времени цикл чтения не завершился тоесть клда чтение обогнало пополнение

Ruslan
18.06.2019
11:44:47
евент на то что пополнения больше не будет

Tishka17
18.06.2019
11:45:32
А. Евент только в главном процессе используется

Ruslan
18.06.2019
11:45:45
ложи в очередь маркер конца
но как только один из процесов возмет этот маркер - другие не узнают о нем

koder
18.06.2019
11:45:53
А. Евент только в главном процессе используется
нет, во всех, вот только это эвент из threading :)

Tishka17
18.06.2019
11:46:41
koder
18.06.2019
11:46:45
но как только один из процесов возмет этот маркер - другие не узнают о нем
ок, в таком варианте евент имеет смысл (хотя я бы брал его и ложил обратно, наверное)

Ruslan
18.06.2019
11:46:54
https://docs.python.org/3/library/multiprocessing.html#multiprocessing.Event
эхх, а автокомлит не увидел Event в multiprocessing щас поменяю

koder
18.06.2019
11:47:50
А нах там проверка на q.empty()?
взведенный эвент говорит что больше не будет новых данных, а это проверка на то что ничего не осталось в очереди с рейсом, конечно :D

Google
koder
18.06.2019
11:48:18
та ну) неочень, но вариант конечно
на самом деле норм, с остальными тебе нужно аккуратно делать что бы рейсов не было

тот факт что очередь не пустая не означает что ты из нее что-то прочитаешь

Ruslan
18.06.2019
11:49:16
на самом деле норм, с остальными тебе нужно аккуратно делать что бы рейсов не было
я щас понял почему этот вариант плох вот почему: while not pushed.isSet() or not q.empty(): тут его не заюзать

Ruslan
18.06.2019
11:49:46
разве что лепить локальную переменную всеравно не нравится

koder
18.06.2019
11:49:50
текущий код может повиснуть в дедлоке на g.get()

koder
18.06.2019
11:50:55
я щас понял почему этот вариант плох вот почему: while not pushed.isSet() or not q.empty(): тут его не заюзать
это и не надо совершенно. делаешь вечный цикл, в котором делаешь x = q.get() если x - маркер конца - ложишь его обратно и выходишь, если нет - обрабатываешь

koder
18.06.2019
11:51:58
Положи столько сколько воркеров.
это требует сделать за количеством воркеров. Но если оно известно, то тоже норм

Ruslan
18.06.2019
11:52:45
Ну и пусть
и процесс завершится т.к. не обнаружит маркер

koder
18.06.2019
11:52:55
он зависнет в get

Tishka17
18.06.2019
11:53:12
и процесс завершится т.к. не обнаружит маркер
Процесс должен завершаться только когда обнаружит маркер

Ruslan
18.06.2019
11:53:21
Kamil
18.06.2019
12:08:37
если внутри запущенного (.start()) потока упало исключение, оно может проброситься в основной поток?

koder
18.06.2019
12:11:26
если внутри запущенного (.start()) потока упало исключение, оно может проброситься в основной поток?
если через сырые потоки делаешь - нет. Если через threadingpool.map/submit - да

Google
?Rain?
18.06.2019
12:15:14
есть датасеййнтисты?

?
18.06.2019
12:16:15
Ruslan
18.06.2019
12:16:27
?Rain?
18.06.2019
12:16:36
Это секта?
да тоталитарная

koder
18.06.2019
12:16:39
есть датасеййнтисты?
думаю есть, но еще есть nometa.xyz. А так то для DS другие чаты

koder
18.06.2019
12:18:04
?Rain?
18.06.2019
12:18:24
почитай
я по вирусным сайтем не перехожу украдут у меня пароь от вк

?Rain?
18.06.2019
12:21:26
)

Paul
18.06.2019
12:21:53
MailGrups своего асистента придумала)))

Pavel
18.06.2019
12:22:09
культ
карго

?Rain?
18.06.2019
12:22:17
M
18.06.2019
12:22:29
Мурусю что ли?

Paul
18.06.2019
12:22:49
Дадада маруся)))

M
18.06.2019
12:23:14
Эт ж самое популярное имя в России

?Rain?
18.06.2019
12:23:21
лизу?

M
18.06.2019
12:23:21
Ассоциации

Страница 9362 из 9768