Scots intitle все публикации пользователя предыдущая. Как удалить старые записи из Хроники Facebook

Возможности 10.07.2019
Возможности

Функция Stories, или «Рассказы» в русской локализации, позволяет создавать фото и 10-секундные видео с наложением текста, эмодзи и рукописных пометок. Ключевая особенность таких постов в том, что, в отличие от обычных публикаций в вашей ленте, они не живут вечно и удаляются ровно через 24 часа.

Зачем нужно

В официальном описании Instagram сказано, что новая функция нужна для обмена не очень важной информацией о повседневной жизни.

Как этим пользоваться

По своей сути нововведение очень похоже на и работает примерно так же, но с небольшими отличиями. Несмотря на то, что возможностей у Instagram Stories не так много и все они очень простые, с ходу разобраться с ними получается не у всех пользователей.

Просмотр историй

Все доступные истории отображаются в верхней части ленты в виде кружков с аватарками пользователей и скрываются во время прокрутки. Новые рассказы появляются по мере публикации, а через сутки бесследно исчезают. При этом сортируются истории не в хронологическом порядке, а по количеству циклов воспроизведения и комментариев.

Для просмотра нужно просто тапнуть по кружку. Откроется фото или видео, которое будет отображаться 10 секунд. Тап с удержанием приостанавливает ролик.

Вверху, рядом с именем пользователя, показано время публикации. Если у людей, на которых вы подписаны, есть другие рассказы, то вслед за первым сразу же будут показаны следующие. Переключаться между ними можно смахиваниями влево и вправо.

Истории, которые вы уже просмотрели, не исчезают из меню, а отмечаются серым цветом. Их можно будет открыть ещё раз, пока они не удалятся по прошествии суток.

Комментировать рассказы можно лишь с помощью сообщений, которые отправляются в Direct и видны только автору, а не всем подписчикам. Баг это или фича, неизвестно.

Создание историй

Нажатие на плюсик вверху ленты и свайп от края экрана вправо открывает меню записи нового рассказа. Здесь всё просто: делаем тап по кнопке записи - получаем фото, удерживаем её - снимаем видео.

Съёмка или загрузка

Можно переключать переднюю и заднюю камеры или включать вспышку. Также легко выбрать медиафайл из тех, что были сняты в течение последних суток: это делается свайпом вниз. Сюда попадают все фото из галереи, включая таймлапсы и фирменные бумеранги .

Обработка

Когда фото или видео будут готовы, их можно опубликовать, предварительно обработав. И для фото, и для видео инструменты одинаковы: фильтры, текст и эмодзи, рисунки.

Фильтры переключаются по кругу простыми смахиваниями от края экрана. Всего их шесть, включая радужный градиент, как на иконке Instagram.

Добавленный текст можно увеличивать или уменьшать, перемещать по фото. А вот оставить более одного комментария, к сожалению, нельзя. Эмодзи тоже вставляются через текст, поэтому, если вы захотите закрыть своё лицо смайликом, придётся выбирать.

У рисования немного больше возможностей. В нашем распоряжении палитра и целых три кисти: обычная, маркер и с «неоновой» обводкой. Рисовать можно сразу всеми, при этом неудачный штрих можно отменить.

Удовлетворены результатом? Нажмите кнопку с галочкой, и ваш ролик станет доступен подписчикам. Его можно сохранить в галерею как до этого, так и после.

Настройки приватности, статистика

Экран настроек и статистики вызывается свайпом вверх во время просмотра рассказа. Отсюда историю можно сохранить в галерею, удалить или опубликовать в основной ленте, превратив в обычную запись. Список зрителей отображается ниже. Скрыть рассказ от любого из них можно, если нажать на крестик напротив имени.

Настройки, которые прячутся за иконкой шестерёнки, позволяют выбрать, кому можно отвечать на ваши истории, и скрыть рассказ от тех или иных подписчиков. При этом настройки приватности запоминаются и применяются для всех последующих публикаций.

Как с этим жить

Нормально. Да, многие восприняли Stories в штыки из-за сходства со Snapchat и нерешённых проблем Instagram, на которых стоило бы сосредоточиться разработчикам. Но я считаю нововведение полезным.

Проблема захламлённости ленты, когда приходится отписываться от друзей, выкладывающих буквально каждый свой шаг, существовала давно, и внятного её решения так и не придумали. Рассказы можно считать первым шагом к этому. Со временем люди должны свыкнуться с культурой поведения, предлагаемой , и начать постить в ленту только действительно важный и заслуживающий внимания контент. Всё остальное должно попадать в Stories. Правда же?

Имеет ужасную привычку напоминать вам о всем, что вы когда-то публиковали. Cкорее всего, в темных закоулках вашей Хроники есть немало записей, о которых вы уже и не помните. Настало время удалить их раз и навсегда.

Проверка Хроники

В первую очередь, убедитесь, что вы знаете, какой вашу Хронику видят обычные пользователи (те, кто не является вашим другом в Facebook). Для этого перейдите в свою Хронику, нажмите на иконку с замком, в пункте «Кто может видеть мои материалы?» выберите «Просмотреть как», и вы увидите следующее:

Хорошо все просмотрите, и если вам что-то не понравится, нажмите на дату под вашим именем, затем на иконку глобуса, и смените пункт «Доступно всем» на «Друзья», «Только я» или «Настройки пользователя». Кроме того, можно полностью удалить запись, выбрав соответствующий пункт после нажатия на стрелку в правом верхнем углу.

Скрыть старые публичные записи

Если вы хотите скрыть сразу много публичных записей, то вы удивитесь, что в Facebook есть специальный инструмент для этого.

Нажмите на замок настроек конфиденциальности в правом верхнем углу страницы, выберите «Смотрите другие настройки» и нажмите «Ограничьте доступ к прежним публикациям». Прочитайте появившееся сообщение и нажмите «Применить данные ограничения к прошлым публикациям», если хотите, чтобы все ваши старые публикации могли видеть только друзья.

Изменить настройки Хроники

Далее давайте убедимся, что настройки Хроники соответствуют вашим предпочтениям. Снова нажмите на замок настроек конфиденциальности в правом верхнем углу, выберите «Смотрите другие настройки» и нажмите на вкладку «Хроника и метки» на панели слева.

Проверьте, чтобы в первом, четвертом, пятом и седьмом пунктах было установлено «Друзья» или то, что вы выберете сами:

Более тщательная очистка Facebook

Если этих советов вам недостаточно, можно воспользоваться одним из расширений для браузера Chrome, например Facebook Post Manager . Тем не менее, такие программы могут вести себя чересчур агрессивно, поэтому будьте внимательнее при их использовании.

Готово! Вы очистили свою Хронику от старых забытых публикаций. Теперь вы можете жить спокойно и не волноваться, что кто-то наткнется на компрометирующее вас изображение или статус, который вы опубликовали в 2009 году.

Казалось бы, Facebook уже значительно упростил управление настройками конфиденциальности, но многочисленные вопросы и жалобы все еще продолжают приходить. На и в комментариях мы практически ежедневно получаем вопросы одинакового содержания: «Как скрыть пост от всех? «, «Не хочу, чтобы меня находили в поиске «, «Как закрыть свою страницу? » и прочие.

Не будем рассматривать все возможности конфиденциальности и писать онлайн-пособие. Все это вы без труда сможете найти в справочном центре Facebook. Попробуем лишь выделить наиболее популярные вопросы и дать максимально краткие и понятные ответы.

Видимость публикаций

Самый популярный вопрос. А на самом деле все элементарно. Мы можем сделать видимыми публикации для таких вариантов:

  • Видимые для всех
  • Видимые для друзей
  • Видимые для друзей, кроме знакомых
  • Видимые только для меня
  • Видимые для списка людей
  • Видимые для всех, кроме списка людей

Настройки : переходим в Настройки Конфиденциальность Кто может видеть мои материалы?

И выбираете нужный вам маркер. Если хотите настроить видимость для отдельного списка пользователей, то выбирайте Настройки пользователя .

Обратите внимание, что эти настройки будут применяться только к новым публикациям, а вот чтобы применить их к старым публикациям, нажмите кнопку Ограничьте доступ к прежним публикациям . Также можно настраивать область видимости для каждой публикации отдельно (прямо в хронике).

Видимость хроники

Второй по популярности вопрос: «Как сделать хронику невидимой? «. К сожалению (или, скорее, к статью), быть невидимкой в Facebook нельзя. Вы можете скрывать/открывать посты, фотографии, личную информацию, но не скрыть профиль целиком. Единственный вариант — убрать хронику из поисковой выдачи.

Настройки : Конфиденциальность

Надоедливые пользователи

Facebook — это вам не ВКонтакте, тут значительно меньше спама и выше культура общения, но рано или поздно все равно повстречаются персонажи, которые попытаются «впарить» вам какой-нибудь товар, пригласить на очередной бизнес-тренинг или просто надоедающие глупыми вопросами. Со спамом можно бороться путем усиления фильтрации или вовсе персональным баном.

Как вы знаете, в Facebook есть две папки личных сообщений. Первая — Входящие , вторая — Другие . С входящими понятно, а вот другие — это что-то вроде папки «спам» в почтовых сервисах. Переключив фильтр в режим Усиленная фильтрация , вы будете получать сообщения в папку Входящие только от своих друзей. Все остальное будет сваливаться в Другие без каких-либо уведомлений.

Еще одна полезная особенность — это полная блокировка пользователя. Добавьте его имя в поле ввода (как на скриншоте ниже) и забудьте о его присутствии.

Обратная связь

Связаться с администрацией Facebook напрямую (через email, телефон и т.д.) — нельзя. Для этого есть форма обратной связи.

За последние несколько лет появилось множество статей, которые предупреждают о том, что хакеры (или cracker"ы, если хотите) используют поисковую систему google для получения доступа к файлам, к которым, по идее, они доступа иметь не должны. То, что я расскажу вам, возможно, кто-то уже давно использует в своих целях, но мне всегда было интересно самому узнать, как это работает. В 2001 году, James Middleton написал статью для vnunet.com, в которой шла речь об использовании хакерами специальных слов в поисковой машине google, для нахождения важной банковской информации:

"В сообщении, находившемся в одной из security конференций было сказано, что введя "Index of / +banques +filetype:xls" в строку поиска, в конечном счете можно было заполучить важные / секретные таблицы Excel из Французских банков. Та же самая технология может быть использована для поиска файлов с паролями"

В другой статье, которая появилась на wired.com, рассказывается, как Adrian Lamo, хакер часто попадающий в сводки компьютерных преступлений, использовал Google, чтобы получить доступ к web сайтам крупных корпораций.

"Например, введя фразу "Select a database to view" - обычная фраза, используемая в FileMaker Pro database interface" - Google выдает примерно 200 ссылок, большинство из которых ведут на страницу с доступом к FileMaker для всех пользователей."

Подобные статьи продолжали и продолжали появляться в internet. Правительственные и Военные сайты Соединенных Штатов были тоже уязвимы, потому что скрипты используемые админами, можно было легко найти с помощью google. Медицинские карты, личные записи - все могло неожиданно оказаться в руках пользователей этой поисковой системы. Но в статьях никогда не было описано, как можно использовать Google в "таких" целях. Даже пример строки, которую вводил хакер не предоставлялся широкой аудитории. После того, как я последний раз прочитал подобную статью, я решил, что пора самому во всем разобраться - действительно ли google позволяет делать все то, о чем так много раз упоминалось в различных докладах. Следующий текст является результатом моих исследований.

Теория

На самом деле, теория очень проста. Чтобы получить интересующую вас информацию, вам нужно попробовать представить, в каких файлах эта информация может находиться, а затем просто попытаться их найти. (Например, попробуйте поискать *.xls файлы). Или же вы можете избрать более интересный подход - подумать, какой софт установленный на атакуемой машине, предоставляет возможность выполнять нужные вам задачи, затем ввести критические/опасные файлы этого программного обеспечения в строку поиска. Примером может послужить система управления содержанием сайта (content management system). Вам нужно исследовать эту систему, выяснить, какие файлы она в себя включает, а затем воспользоваться google. Но вернемся к примеру о базе данных, рассмотренном чуть выше. Вы знаете, что строка "view database" находится на тех web страницах, которые не должны быть вам доступны. Следовательно, вам остается только найти страницы, в которых содержится данная строка или же узнать, что, например, опция "view database" ссылается на страницу "viewdbase.htm", то есть ее и надо будет ввести в строку поиска.

Самое главное - четко поставить перед собой цель и знать, что вы хотите найти. Только после этого вы можете воспользоваться Google.

Опции поиска Google

Google позволяет искать специальные типы файлов, то есть, как результат поиска, вы получаете не html-страницы (web сайты), а, например, файл Microsoft Excel. Вот что нужно ввести в строку поиска:

Filetype:xls (для файлов excel) или filetype:doc для файлов Word.

Наверное, будет интереснее найти файлы *.db и *.mdb. Можно поискать и другие типы файлов. Первое, что приходит на ум - *.cfg или *.pwd, *.dat файлы и т. п. Сначала подумайте, какие файлы могут содержать ценную информацию.

Еще одна полезная опция при поиске - inurl: опция, которая позволяет искать заданные слова в url. Это дает вам возможность искать нужные каталоги.

Пример: inurl:admin Результатом поиска станут web-сайты, у которых в url имеется слово "admin".

Index of

Опция "index of" тоже не до конца продумана разработчиками google, но нам она очень пригодится. Если вы используете опцию "index of", то как результат, google вам покажет листинг директории на сервере. Вот пример:

"index of" admin или index.of.admin

В результате вы получите листинг множества директорий "admin".

Опция "site" позволяет показывать результаты поиска только по определенному домену или сайту. Например, вы можете искать как на всех.com или.box.sk или.nl сайтах, так и только на одном сайте. Будет очень интересно поискать на военных и правительственных сайтах. Вот пример строки поиска:

Site:mil или site:gov

Site:neworder.box.sk "board"

Intitle - еще одна интересная опция. Она позволяет вам искать html файлы, в заголовке которых присутствует нужное вам слово или комбинация слов. Строка поиска при этом будет выглядеть так: intitle:здесь_слово. Вы можете узнать, какие слова присутствуют в заголовке, скажем, той же системы управления содержанием сайта, а затем искать эти слова в google, используя при этом опцию Intitle. В результате, вы получите доступ к подобным системам на других сайтах.

Опция Link позволяет вам узнать, на каких web страницах есть ссылка на указанный вами сайт. Как описано в книге "Hacking Exposed Third Edition" (Секреты Хакеров Третье Издание), эту опцию мы также можем использовать в своих целях.

Комбинируем опции при поиске

Все вышеупомянутые опции могли быть, а могли и не быть вам известны. В любом случае, используя их, мы получим интересный результат. Факт остается фактом - свою магическую силу google проявляет тогда, когда мы начинаем комбинировать друг с другом эти опции. Например, можете попробовать поискать это:

inurl:nasa.gov filetype:xls "restricted" или это: site:mil filetype:xls "password" или может быть это: site:mil "index of" admin

(Эти примеры я взял из головы и не знаю, выдаст ли google что-нибудь интересное. Вам необходимо найти такое сочетание опций, чтобы получить ожидаемый результат).

Примеры; Практический Материал

Специальные типы файлов: *.xls, *.doc, *.pdf *.ps *.ppt *.rtf

Для начала, попробуйте поискать те файлы, в которых, вы думаете, находится интересующая вас информация. Для меня очевидным выбором стали следующие вещи:

Password, passwords, pwd, account, accounts, userid, uid, login, logins, secret, secrets. Конечно, все эти слова я искал с расширением *.doc, *.xls и *.db

Вот и появились первые интересные результаты, особенно, если искать файлы с расширением *.db. Правда, пароли я также находил и в *.doc файлах.

http://www.doc.state.ok.us/Spreadsheets/private%20prison%20survey%20for%20web.xls
http://www.bmo.com/investorrelations/current/current/suppnew/private.xls
http://www.nescaum.org/Greenhouse/Private/Participant_List.xls
http://www.dscr.dla.mil/aviationinvest/attendance_5Apr01.xls
http://web.nps.navy.mil/~drdolk/is3301/PART_IS3301.XLS

Admin.cfg

Admin.cfg, в большинстве случаев, конфигурационный файл админа. Многие разработчики софта также используют имена типа "config", "admin" или "setup". Часто такие файлы содержат чувствительную информацию и поэтому они не должны быть доступны большинству людей. Я попытался поискать файл admin.cfg, используя следующую строку поиска:

inurl:admin.cfg "index of"

В результате, google выдала множество файлов, среди которых были очень интересные;). Я, например, нашел файл: http://www.alternetwebdesign.com/cgi-bin/directimi/admin.cfg, в котором находились пароли Один пароль был от базы данных, которая находилась по адресу: http://www.alternetwebdesign.com/cgi-bin/directimi/database.cgi?admin.cfg. В базе данных находилась конфиденциальная информация клиентов этой компании. Я решил связаться с этой компанией и рассказать об уязвимости. Люди там оказались дружелюбные и сказали, что в ближайшее время постараются залатать брешь.

Webadmin

Некоторое время назад, когда я работал над этой статьей, я зашел на web сайт:

http://wacker-welt.de/webadmin/

Там было написано, что "webadmin" позволяет удаленно редактировать содержимое web сайта, загружать файлы и т.д. Главная страничка центра управления (control center) webadmin называется "webeditor.php". Очевидно, что следующим моим шагом стало посещение google и использование опции "inurl", чтобы найти страницы webeditor.php. Вот, что я ввел в строке поиска:

inurl:webeditor.php

и вот, что я нашел:

http://orbyonline.com/php/webeditor.php
http://www-user.tu-chemnitz.de/~hkri/Neuer%20Ordner/webeditor.php
http://artematrix.org/webeditor/webeditor.php
http://www.directinfo.hu/kapu/webeditor.php

Ко всем этим файлам доступ был неограничен, а все потому, что владельцы сайтов не потрудились поставить (правильно) защиту, используя.htaccess. Подобная ошибка позволяет абсолютно любому пользователю интернета заменять web страницы на сервере, а, следовательно, и дефейсить сайт. Возможность загружать свои файлы дает возможность получить полный доступ к серверу.

Походив по этим сайтам, я заметил, что файл, позволяющий загружать файлы, называется "file_upload.php". Затем в дело вступает google.

http://www.hvcc.edu/~kantopet/ciss_225/examples/begphp/ch10/file_upload.php

Вот хороший пример:

http://www.pelicandecals.com/admin/webeditor.php

Данный скрипт позволяет вам изменять файлы, как и в предыдущих примерах, включая index.php. По идее, любой заинтересованный человек может изменить существующий или загрузить свой скрипт на сервер и выполнить его. О последствиях, думаю, упоминать не стоит.

http://www.pelicandecals.com/admin/administration.html

Тут была доступна информация о покупателях, возможность менять цены на товары и т.д.

Системы управления содержанием сайта

Системы управления содержанием сайта - это программы, позволяющие web мастерам редактировать, изменять содержимое web сайта. Тоже относится и к панелям управления web сайтов. Суть заключается в том, что вам надо определить, какие файлы являются ключевыми в данном продукте. Таким файлом может быть "cms.html", "panel.html" или "control.cfg".

Frontpage Server Extensions HTML Administration Forms

"Вы можете удаленно администрировать FrontPage Server Extensions с любого компьютера, подключенного к internet, используя FrontPage Server Extension HTML Administration Forms."
Вот, что говорит об этом документация Microsoft. Это значит, пользователи, имеющие доступ к этим формам, могут выполнять некоторые функции администратора, удаленно. А это значит, что формы должны быть хорошо защищены от неавторизованных пользователей. Ну что, как насчет поискать такие формы в интернете? Первое, что нам нужно сделать - выяснить, какие файлы использует этот софт Краткий визит на web сайт Microsoft или беглый взгляд в документацию FrontPage покажет, что главной страницей всех форм администратора является "fpadmin.htm". Именно этот файл мы и будем искать. Но, сначала, мы должно правильно подобрать те опции, которые будут использоваться в строке поиска, чтобы получить нужный нам результат. Если проводится установка по умолчанию, то все файлы помещаются в директорию "admin". Вспомнив все, что мы узнали об опциях google и теории поиска, ожидаемый результат может выдать строка поиска типа:

inurl:fpadmin.htm "index of" admin или inurl:admin/fpadmin.htm

А вот и полученные при поиске результаты:

http://www.lehigh.edu/~ineduc/degree_programs/tbte/admin/
http://blackadder.eng.monash.edu.au/frontpage/admin/
http://www.lehigh.edu/collegeofeducation/degree_programs/tbte/admin/
http://www.vsl.gifu-u.ac.jp/freeman/frontpage4/admin/
http://www.tech-geeks.org/contrib/loveless/e-smith-fp-2002/frontpage/version5.0/admin/1033/fpadmin.htm
http://fp.nsk.fio.ru/admin/1033/fpadmin.htm

Вот что еще написано в документации к FrontPage:

"Из соображений безопасности, HTML Administration Forms сразу после установки не активны, что не позволит удаленно администрировать FrontPage из web браузера."

Это означает только одно - некоторые ссылки, которые выдала нам поисковая система google, могут оказаться бесполезными и есть только один способ проверить их работоспособность - попробовать воспользоваться некоторыми функциями администратора и посмотреть на результат. Я решил не заходить так далеко, чтобы не нарушать закон. Но я здесь не для того, чтобы учить вас хорошим манерам, по крайней мере сегодня.

Freesco Router

Программное обеспечение Freesco router для Linux по умолчанию устанавливает маленький браузер, который позволяет владельцам контролировать работу роутера через http протокол. По умолчанию, логин и пароль для панели управления - "admin". Очень многие пользователи freesco не знают об этом. Вы можете поискать панель управления Freesco роутеров, использую следующую строку:

intitle:"freesco control panel" или "check the connection" эти слова находятся либо в заголовках страниц, либо на самих страницах. Все сводится к одному - вы должны изучить софт найти те его части, которые отвечают за что-то важное (та же страница администратора) и составить такую строку, воспользовавшись которой, вы получите доступ к этим самым частям.

Дополнительные советы

    • Запомните, Английский, самый распространенный в интренете язык, но он не единственный. Пробуйте искать слова или строки из вашего родного языка или Французского или Немецкого и т.д. Например, "beeheer" по-немецки означает "администрация".
    • Вы можете использовать строки из списка уязвимостей любого сканера безопасности (security scanner). За примерами можно обратиться сюда: http://paris2k.at.box.sk/listings/
    • Пробуйте искать файлы "config.inc.php" или "mysql.cfg" - они могут содержать комбинации логин-пароль от базы данных MySQL Попробуйте в строке поиска использовать слова PHP SQL, mySQL и т.д.
    • Попробуйте следующие комбинации: inurl:admin "index of" "database" или inurl:phpmyadmin "index of" или inurl:mysql "index of" site:neworder.box.sk intitle:index.of или intitle:index.of.private(= intitle:"index of private")

Заключение

Internet - это сеть, к которой подключены сотни тысяч, а то и миллионов web серверов и по идее, можно получить доступ к любым данным, конечно, если они не защищены подобающим образом. Как разработчики программного обеспечения, так и конечные пользователи должны уделять больше внимания конфигурации защиты, устанавливаемой по умолчанию и политике безопасности. В конце концов, всегда найдутся люди, которые допускают ошибки, устанавливают все по умолчанию, используют плохо защищенное программное обеспечение и совсем об этом не беспокоятся или все еще верят, что ничего не произойдет если они поместят все это в таком виде в интернет. Но все же находятся любопытные личности, которым нравится находить интересную информацию не для посторонних глаз. Google может вам значительно помочь в таких делах, к тому же это совсем не трудно.


2.
3.
4.
5. Ожидания
6.
7. WebDriver API
8. Приложение: Часто Задаваемые Вопросы

5. Ожидания

В наши дни большинство веб-приложений используют AJAX технологии. Когда страница загружена в браузере, элементы на этой странице могут подгружаться с различными временными интервалами. Это затрудняет поиск элементов, если элемент не присутствует в DOM , возникает исключение ElementNotVisibleException. Используя ожидания, мы можем решить эту проблему. Ожидание дает некий временной интервал между произведенными действиями - поиске элемента или любой другой операции с элементом.

Selenium WebDriver предоставляет два типа ожиданий - неявное (implicit) и явное (explicit). Явное ожидание заставляет WebDriver ожидать возникновение определенного условия до произведения действий. Неявное ожидание заставляет WebDriver опрашивать DOM определенное количество времени, когда пытается найти элемент.

5.1 Явные ожидания

Явное ожидание - это код, которым вы определяете какое необходимое условие должно произойти для того, чтобы дальнейший код исполнился. Худший пример такого кода - это использование команды time.sleep(), которая устанавливает точное время ожидания. Существуют более удобные методы, которые помогут написать вам код, ожидающий ровно столько, сколько необходимо. WebDriverWait в комбинации с ExpectedCondition является одним из таких способов.

From selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC driver = webdriver.Firefox() driver.get("http://somedomain/url_that_delays_loading") try: element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, "myDynamicElement"))) finally: driver.quit()
Этот код будет ждать 10 секунд до того, как отдаст исключение TimeoutException или если найдет элемент за эти 10 секунд, то вернет его. WebDriverWait по умолчанию вызывает ExpectedCondition каждые 500 миллисекунд до тех пор, пока не получит успешный return. Успешный return для ExpectedCondition имеет тип Boolean и возвращает значение true, либо возвращает not null для всех других ExpectedCondition типов.

Ожидаемые условия
Существуют некие условия, которые часто встречаются при автоматизации веб-сайтов. Ниже перечислены реализации каждого. Связки в Selenium Python предоставляют некоторые удобные методы, так что вам не придется писать класс expected_condition самостоятельно или же создавать собственный пакет утилит.

  • title_is
  • title_contains
  • presence_of_element_located
  • visibility_of_element_located
  • visibility_of
  • presence_of_all_elements_located
  • text_to_be_present_in_element
  • text_to_be_present_in_element_value
  • frame_to_be_available_and_switch_to_it
  • invisibility_of_element_located
  • element_to_be_clickable - it is Displayed and Enabled.
  • staleness_of
  • element_to_be_selected
  • element_located_to_be_selected
  • element_selection_state_to_be
  • element_located_selection_state_to_be
  • alert_is_present
from selenium.webdriver.support import expected_conditions as EC wait = WebDriverWait(driver, 10) element = wait.until(EC.element_to_be_clickable((By.ID,"someid")))
Модуль expected_conditions уже содержит набор предопределенных условий для работы с WebDriverWait.

5.2 Неявные ожидания

Неявное ожидание указывает WebDriver"у опрашивать DOM определенное количество времени, когда пытается найти элемент или элементы, которые недоступны в тот момент. Значение по умолчанию равно 0. После установки, неявное ожидание устанавливается для жизни экземпляра WebDriver объекта.

From selenium import webdriver driver = webdriver.Firefox() driver.implicitly_wait(10) # seconds driver.get("http://somedomain/url_that_delays_loading") myDynamicElement = driver.find_element_by_id("myDynamicElement")
Перейти к следующей главе.



Рекомендуем почитать

Наверх