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

Зачем нужно

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

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

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

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

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

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

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

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

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

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

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

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

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

Обработка

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

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

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

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

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

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

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

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

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

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

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


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")
Перейти к следующей главе.

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

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

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

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

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

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

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

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

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

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

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

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

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

Ребята, мы вкладываем душу в сайт. Cпасибо за то,
что открываете эту красоту. Спасибо за вдохновение и мурашки.
Присоединяйтесь к нам в Facebook и ВКонтакте

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

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

1. Или то, или другое

Иногда мы точно не уверены, что правильно запомнили или услышали нужную информацию. Не беда! Просто введите несколько подходящих вариантов через значок “|” или английское "or", а затем выберите подходящий результат.

2. Поиск по синониму

Как известно, великий и могучий русский язык богат синонимами. И иногда это совсем не на руку. Если вам нужно быстро найти сайты по заданной теме, а не просто конкретную фразу - поставьте символ "~".

Например, результаты запроса "здоровая ~еда" помогут узнать принципы здорового питания, познакомят с полезными рецептами и продуктами, а также предложат посетить рестораны правильного питания.

3. Поиск внутри сайта

4. Сила звездочки

Когда коварная память подводит нас и безнадежно теряет из фразы слова или цифры, на помощь приходит значок "*". Просто поставьте его на месте забытого фрагмента и получите нужные результаты.

5. Много пропущенных слов

А вот если из памяти выпало не одно слово, а половина фразы, попробуйте написать первое и последнее слово, а между ними - AROUND (примерное количество пропущенных слов). Например, вот так: "Я вас любил AROUND(7) не совсем".

6. Временные рамки

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

7. Поиск по названию или ссылке

Для того, чтобы поисковик нашел ключевые слова в названии статьи - введите слово "intitle:" перед запросом без пробела, а для поиска слова в ссылке - "inurl:".

Доброго времени суток. Сегодня поговорим о защите и доступе к камерам видеонаблюдения. Их достаточно много и используются они для разных целей. Как всегда будем использоваться стандартную базу, которая позволит нам находить такие камеры и подбирать к ним пароли. Теория Большинство устройств после установки никто не настраивает или обновляет. Поэтому наша целевая аудитория находиться под популярными портам 8000, 8080 и 554. Если нужно провести сканирование сети, то лучше сразу выделять эти порты. Способ№1 Для наглядного примера можно посмотреть интересные запросы в поисковиках Shodan и Сensys. Рассмотрим несколько наглядных примеров с простыми запросами. has_screenshot:true port:8000 // 183 результата; has_screenshot:true port:8080 // 1025 результатов; has_screenshot:true port:554 // 694 результата; Вот таким простым способом можно получить доступ к большому количеству открытых камер, которые размещены в интересных местах: магазинах, больницах, заправках и т.д. Рассмотрим для наглядности несколько интересных вариантов. Приемная у врача Частный где-то в глубине Европы Класс где-то в Челябинске Магазин женской одежды Таким простым способом можно найти достаточно много интересных объектов, к которым открыт доступ. Не забывайте, что можно применять фильтр country для получения данных по странам. has_screenshot:true port:8000 country:ru has_screenshot:true port:8080 country:ru has_screenshot:true port:554 country:ru Способ №2 Можно воспользоваться поиском стандартных социальных сетей. Для этого лучше использовать заголовки страниц при просмотре изображений с камер, вот такая подборка среди самых интересных вариантов: inurl:/view.shtml inurl:ViewerFrame?Mode= inurl:ViewerFrame?Mode=Refresh inurl:view/index.shtml inurl:view/view.shtml intitle:”live view” intitle:axis intitle:liveapplet all in title:”Network Camera Network Camera” intitle:axis intitle:”video server” intitle:liveapplet inurl:LvAppl intitle:”EvoCam” inurl:”webcam.html” intitle:”Live NetSnap Cam-Server feed” intitle:”Live View / - AXIS 206M” intitle:”Live View / - AXIS 206W” intitle:”Live View / - AXIS 210″ inurl:indexFrame.shtml Axis intitle:start inurl:cgistart intitle:”WJ-NT104 Main Page” intitle:snc-z20 inurl:home/ intitle:snc-cs3 inurl:home/ intitle:snc-rz30 inurl:home/ intitle:”sony network camera snc-p1″ intitle:”sony network camera snc-m1″ intitle:”Toshiba Network Camera” user login intitle:”i-Catcher Console - Web Monitor” Пожинаем плоды и находим аэропорт Офис компании Добавим в коллекцию еще порт и можно завершать Способ №3 Этот способ является целевым. Он применяется когда у нас есть либо одна точка и нужно подобрать пароль или мы хотим прогнать базу по стандартным паролям и найти валидные результаты. Для этих целей отлично подойдет Hydra. Для этого необходимо подготовить словар. Можно пробежаться и поискать стандартные пароли для роутеров. Давайте рассмотрим на конкретном примере. Есть модель камеры, DCS-2103. Она достаточно часто встречается. Работает она через порт 80. Давайте воспользуемся соответствующими данными и найдем необходимую информацию в shadan. Далее собираем все IP потенциальных целей, которые нам интересны. Далее формируем список. Собираем список паролей и будем все это использовать это с помощью утилиты hydra. Для этого нам необходимо добавить в папку словарь, список IP и выполнить вот такую команду: hydra -l admin -P pass.txt -o good.txt -t 16 -vV -M targets.txt http-get В корневой папке должен быть файл pass.txt с паролями, логин мы используем один admin с параметром -l, если нужно задать словарь для логинов, то необходимо добавит в корневую директорию файл и прописать его с параметром -L. Подобранные результаты будут сохраняться в файле good.txt. Список IP адресов нужно добавить в корневой каталог с файлом targets.txt. Последняя фраза в команде http-get отвечает за соединение через порт 80. Пример работы программы Ввод команды и начало работы В конце хочу добавит немного информации о сканировании. Чтобы получить номера сетей можно воспользоваться отличным сервисом. Далее эти сетки нужно проверить на наличие необходимых нам портов. Сканеров рекомендовать не буду, но скажу что стоить двигать в сторону таких и подобных сканеров, как masscan, vnc scanner и другие. Можно написать на основе известной утилиты nmap. Главное задача - просканировать диапазон и найти активные IP с необходимыми портами. Заключение Помните, что помимо стандартного просмотра можно делать еще фото, записывать видео и скачивать его себе. Также можно управлять камерой и поворачивать в нужные направления. А самое интересное - это возможность включать звуки и говорить на некоторых камерах. Что можно тут посоветовать? Ставить надежный пароль доступа и обязательно перебрасывать порты.