@spbpython

Страница 717 из 785
Peter
09.05.2018
14:12:07
@lig11 С этим разобрался, теперь работает как надо, но не всё Почему-то не хочет понимать вот это self._profile.set_preference('browser.link.open_newwindow', 3) оставляет 2 и ссылки открываются в новых окнах. Я сделал костыль, который посылает комбинацию кнопок через actions = ActionChains(self._driver) , но это ж как-то не по феншую.

Позволяет ли selenium кликать по элементам, клик по которым реализован javascript’ом?

Google
МишанЯ
10.05.2018
06:40:14
Я вообще подумал создать клиента для браузерной игры, только вот хрен его знает что там использовать.

По идеи он должен ааторизоваться и держать сессию...слышал про фреймворк на Питоне, говорят с помощью него

Peter
10.05.2018
06:47:32
Я что-то не могу сделать, есть пример? В chrome, по моему xpath'у элемент находит. Пишу через actionChains move и click(), но в реальности валится по timeout'у на поиске элемента.

Sergey
10.05.2018
07:30:26
поиск элемента и click() делаются в одну строчку?

если нет, то элемент мог пропасть. В коде ещё нужно использовать WebdriverWait. Когда дебажишь, или используешь REPL то кажется всё ок, а при автоматическом запуске без WebdriverWait ничего работать не будет

Peter
10.05.2018
07:52:11
А, если несколько однотипных элементов и нужно выбрать один и по нему кликнуть?

элементы без id и имеют одинаковый class

текст может отличаться

Sergey
10.05.2018
08:56:20
я могу ответить только как captaion obvious: нужно перебором найти нужный элемент по тексту или по порядку и кликнуть

Peter
10.05.2018
09:14:27
т.е. нельзя сначала собрать list элементов одного типа, а потом по нему пройтись, взять нужный элемент и кликнуть?

Dmitry
10.05.2018
10:56:10
https://www.reddit.com/r/Python/comments/8hvzja/backdoor_in_sshdecorator_package/



https://raw.githubusercontent.com/vstinner/conf/master/2018-PyconUS/stable_abi.pdf

Google
Roman
10.05.2018
11:04:20
вообще, за handler.read() надо бить. вообще за любой .read() из сети надо бить.

Dmitry
10.05.2018
11:16:47
Roman
10.05.2018
11:18:06
почему?) у urllib такое API что уж тут поделаешь
я на той стороне отдам тебе файл в 20Гб ) а к твоему процессу придет злобный OOM Killer )))

это если утрировать. на практике такой код скорее всего начнет жрать память как вне себя :)

Roman
10.05.2018
11:26:41
А как надо?
хотя бы чанками читать

read() у тебя высосет всё в память. вот сколько прилетит - столько и осядет в памяти :)

Dmitry
10.05.2018
11:31:13
я посмотрел в API - там чанками, но только если в заголовках есть Transfer-Encoding: chunked

а если есть content-length то он читает чанками по 1 МБ

а вот если ни того ни другого нет то приплыли

Ilia
10.05.2018
11:50:15
Используйте requests, там уже всё есть http://docs.python-requests.org/en/master/api/#requests.Response.iter_content

Peter
10.05.2018
12:06:15
Какой правильный путь в selenium переключать контекст на новый таб? Допустим открываю я его так: def open_in_tab(self, item, focus_to_tab=False): """Open item in tab""" # Define the control_key by system platform # For MacOS should be COMMAND key, others would be CONTROL key control_key = Keys.COMMAND if sys.platform == 'darwin' else Keys.CONTROL actions = ActionChains(self._driver) actions.key_down(control_key) # Set focus to new tab if focus_to_tab: actions.key_down(Keys.LEFT_SHIFT) actions.click(item) if focus_to_tab: actions.key_up(Keys.LEFT_SHIFT) actions.key_up(control_key) actions.perform()

Но, потом нужно в него переключить контекст селениума

Если делать так, то без какого-нибудь time.sleep(3) оно не правильно работает. windows = self._driver.window_handles self._driver.switch_to.window(windows[len(windows) - 1])

На что вешать WebDriverWait(self._driver, 10).until(EC.presence_of_element_located((By.XPATH, element_xpath)))

МишанЯ
10.05.2018
12:41:52
Ребят, для создания клиента браузерной игры какой фреймворк хорошо подойдёт?

Ruslan
10.05.2018
12:51:07
pixijs, есть phaser, но он все равно на pixijs, есть easeljs

Это 2d

Это для рендера спрайтов. Для gui используй знакомые вещи вроде vue/angular/react

Dmitry
10.05.2018
16:33:38
https://github.com/xgi/castero

Google
Dmitry
10.05.2018
16:33:39
podcast client for the command line

сначала увидел думал это от @magniff )))

ты же похожее для vk писал)

https://github.com/magniff/inmelody

Aleksandr
10.05.2018
16:34:46
ну даЮ апи прикрыли же волки позорные

Dmitry
10.05.2018
16:34:51
угу(

Sergey
10.05.2018
16:44:03


Aleksandr
10.05.2018
16:45:05
лисп в питоне чтоб делать nlp

Dmitry
10.05.2018
16:45:38
когда очень любишь lisp

Dmitry
10.05.2018
16:45:45
а ещё у нас кажется снова будет что пожевать, но это неточно

Sergey
10.05.2018
16:45:47
лисп в питоне чтоб делать nlp
Приходи ловить наркомана?

Dmitry
10.05.2018
16:45:58
ну и готовим некий интерактив для вас новый

кароч регайтесь

Dmitry
11.05.2018
07:22:58
клёвая презенташка Виктора Стинера с PyconUS 2018: python3 10 years later: https://fosdem.org/2018/schedule/event/python3/attachments/slides/2163/export/events/attachments/python3/slides/2163/python3_10years_later.pdf



смешной слайд)



Valery
11.05.2018
07:53:18
Python 3.2 requires six.u("unicode"); u"unicode" is a syntax error Не знал :)
u'string' сначала выкинули в третьем питоне, потом вернули в 3.3 для удобства портирования.

Eugene
11.05.2018
07:54:49
u'string' сначала выкинули в третьем питоне, потом вернули в 3.3 для удобства портирования.
Не знал, что его выкидывали. Оказывается, было не только callable :)

Google
Roman
11.05.2018
11:23:42
http://www.brendangregg.com/usemethod.html

Dmitry
11.05.2018
13:43:49
основательный подход

Roman
11.05.2018
14:11:30
http://www.brendangregg.com/blog/2017-08-08/linux-load-averages.html

Dmitry
11.05.2018
14:31:21
о да! это классная)

МишанЯ
12.05.2018
13:00:01
Кто может подсказать про парсинг посредтвом python?

Andrey
12.05.2018
13:00:27
парсинг чего?

МишанЯ
12.05.2018
13:00:41
Парсинг сайтов

Andrey
12.05.2018
13:01:17
наерное имеет смысл сразу написать вопрос...?

МишанЯ
12.05.2018
13:02:23
На даннный момент баловался с BS4 и requests. Вроде удобно как. Но узнал, что есть и такие как Grab и прочие для парсинга...С чем комфортнее работать и возможности более?

Marco
12.05.2018
13:04:41
На даннный момент баловался с BS4 и requests. Вроде удобно как. Но узнал, что есть и такие как Grab и прочие для парсинга...С чем комфортнее работать и возможности более?
Scrapy - это стандартный инструмент для такого рода задач. Иногда ещё Selenium может потребоваться, но для начала нужно освоить Scrapy.

МишанЯ
12.05.2018
13:04:52
Ну и конечно же весомый фактор наличия рускоязычной документации

Yuryi
12.05.2018
13:05:46
ват ? русская дока как причина выбора инструмента ?

разницы не будет

Marco
12.05.2018
13:07:17
Ну и конечно же весомый фактор наличия рускоязычной документации
Нет. Это повод безотлагательно начинать изучение английского.

МишанЯ
12.05.2018
13:08:13
python то с азов только наал уползать

Andrey
12.05.2018
13:14:34
можно пояснить про "наал уползать"?

МишанЯ
12.05.2018
13:15:26
начал уползать с изучения азов, хочу углубленно...вот думаю в сторону парсинга

Google
Marco
12.05.2018
13:33:22
начал уползать с изучения азов, хочу углубленно...вот думаю в сторону парсинга
На русском языке нет актуальной документации, читать нужно исключительно на английском. Первое время со словариком. Через пару месяцев язык значения иметь уже не будет - технический английский осваивается очень быстро.

b0g3r
12.05.2018
13:34:16
подтверждаю

Marco
12.05.2018
13:39:44
Без английского никуда, т.к. модулям/классам/переменным нужны вменяемые названия. Nakladnaya, glavnvaya, и podval любой код превращают в мусор.

Этим, кстати, не только русскоговорящие грешат. Испанцы те ещё любители всяких fecha, codigo, и nombre.

Sergey
12.05.2018
14:23:19
Этим, кстати, не только русскоговорящие грешат. Испанцы те ещё любители всяких fecha, codigo, и nombre.
А если бизнес в жизни использует только специфичные русские слова (примеры не смогу привести), есть смысл искать англоязычные аналоги? Не внесут они лишней путаницы?

Marco
12.05.2018
14:27:40
А если бизнес в жизни использует только специфичные русские слова (примеры не смогу привести), есть смысл искать англоязычные аналоги? Не внесут они лишней путаницы?
Не бывает какого-то особенного российского бизнеса. Перевод терминов - дополнительный повод разобраться в их сути. И вообще, старайтесь не работать с русскоязычными заказчиками - глобальный рынок айти гораздо интереснее.

Dmitry
12.05.2018
14:28:04
эти я бы не переводил

Страница 717 из 785