Приветствую, друзья! Сегодня у меня сенсационная новость для Вас! Сегодня ночью, в Инстаграм официально объявили, что готовятся к запуску специального алгоритма, который сначала будет показывать пользователям только самое интересное.

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

Что тогда будет влиять на распределение публикаций в ленте новостей?

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

По словам самого Инстаграм, пользователи не видят около 70% публикаций , которые находятся в их лентах новостей. Согласитесь, что это довольно внушительное количество!

Таким образом, Вы, как бренд, компания, популярный пользователь или паблик, значительно недополучаете заслуженного внимания даже если Ваш контент реально интересный!

Кстати, по последним исследованиями агентства Locowise, которые с апреля 2015 года ежемесячно подсчитывают органический прирост фолловеров в аккаунтах Инстаграм , он (этот самый органический прирост) снизился за этот период на — ВНИМАНИЕ 92.86% !!! Это говорит о том, что пользователи уже просто не поспевают за быстрым ростом соц. сети и менее охотно подписываются на новые аккаунты.

Также, несмотря на то, что в среднем пользователи проводят в Инстаграм около 21 минуты в день, проскроллить ленту новостей даже на половину они уже не успевают. Поэтому, новость о запуске алгоритма является как бы сама собой разумеющейся. Вы ведь понимаете, что основная цель Инстаграм — повышать время, которое пользователь проводит в соц. сети. А сделать это можно только за счет повышения качества контента, который инстаграммер видит в своей ленте. Ведь согласитесь, что хоть Фейсбук постоянно и поливают грязью за алгоритмы и тому подобное, но количество активных пользователей в соц. сети отнюдь не снижается! Почему? Да просто потому, что в Фейсбук меньше всякого хлама и спама, чем в том же ВК, который пока использует хронологический порядок выдачи постов.

Думаю, что смысл введения алгоритма Инстаграмом, Вы улавливаете. Давайте теперь разберемся с самым важным.

Как будет работать алгоритм в Инстаграм?


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

В виду того, что Инстаграм принадлежит Фейсбук, то и алгоритм здесь обещает быть довольно похожим. Так что, ребята, кто проходил мой курс «Как победить алгоритм Фейсбук «, инстаграммовский алгоритм Вы также расщелкаете как орешки 🙂

Основная идея в том, что в ленте Инстаграм теперь будет показывать публикации, которые, по мнению алгоритма, будут наиболее интересны пользователю . Алгоритм также будет принимать во внимание связь пользователя с показываемым ему аккаунтом, а также «возраст» публикации.

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

Обратите внимание на то, что пока что Инстаграм не будет делать ничего супер радикального! Не пугайтесь этой новости!

Все публикации, которые и так появились бы в ленте пользователя, если бы алгоритм не существовал, — по-прежнему останутся там! Пока что алгоритм будет отвечать только за то, в каком порядке будут появляться посты в ленте!

Как это отразится на Вас?

Я уверена, что, начиная с сегодняшнего дня, в интернете появится масса гневных статей и комментариев о введении алгоритма. Люди впадут в панику, что теперь никто не будет видеть публикации, а Инстаграм-редиска только того и хочет, чтобы подтолкнуть Вас делать рекламу.

Друзья, не поддавайтесь негативу! Не так страшен черт, как его малюют 🙂

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

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

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

Интересные публикации теперь будут находиться в самом верху ленты Инстаграм вне зависимости от времени публикации!

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

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

Желаю Вам успешного продвижения!

Доброго времени суток. Сегодня поговорим о защите и доступе к камерам видеонаблюдения. Их достаточно много и используются они для разных целей. Как всегда будем использоваться стандартную базу, которая позволит нам находить такие камеры и подбирать к ним пароли. Теория Большинство устройств после установки никто не настраивает или обновляет. Поэтому наша целевая аудитория находиться под популярными портам 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 с необходимыми портами. Заключение Помните, что помимо стандартного просмотра можно делать еще фото, записывать видео и скачивать его себе. Также можно управлять камерой и поворачивать в нужные направления. А самое интересное - это возможность включать звуки и говорить на некоторых камерах. Что можно тут посоветовать? Ставить надежный пароль доступа и обязательно перебрасывать порты.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

В статье про я рассмотрел примеры и коды для вывода некоторых дополнительных информационных элементов на страницах постов: связных заметок, названий тегов/категорий и т.п. Похожей фишкой также являются ссылки на предыдущие и следующие WordPress записи. Данные линки будут полезны при навигации посетителей сайта, а также являются еще одним способом . Именно поэтому стараюсь добавлять их в каждый свой проект.

В реализации задачи нам помогут 4 функции, о которых расскажу ниже:

Поскольку речь идет о странице постов (Post), то в 99% случаев вам нужно будет редактировать файл шаблона single.php (либо тот, где в вашей теме задается формат вывода единичных статей). Функции используются в цикле Loop. Если же требуется убрать следующие / предыдущие записи в WordPress, то ищите соответствующий код в этом же файле шаблона и удаляйте (или закомментируйте) его.

Функция next_post_link

По умолчанию формируется линк на заметку, имеющую более новую дату создания сразу после текущей (т.к. все посты располагаются в хронологическом порядке). Вот как он выглядит в коде и на сайте:

Синтаксис функции:

  • format (строка) — определяет общий формат генерируемой ссылки, где с помощью переменной %link можете задавать какой-то текст до и после нее. По умолчанию это просто линк со стрелочкой: ‘%link »’
  • link (строка) — анкор ссылки на следующую запись в WordPress, параметр %title подставляет ее заголовок.
  • in_same_term (boolean) — определяет будут ли рассматриваться в работе только элементы из текущей категории. Допустимые значения true / false (1 / 0), по умолчанию второй вариант.
  • excluded_terms (строка или массив) — укажите ID категорий блога, заметки из которых будут исключены из выборки. Допускается либо массив array(2, 5, 4) либо написание в строку через запятую. Полезно при работе с GoGetLinks , когда нужно запретить показ рекламных постов в данном блоке.
  • taxonomy (строка) — содержит название таксономии, из которой берутся следующие записи, если переменная $in_same_term = true.

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

(следующая статья) %link →","%title", FALSE, 152) ?>

Здесь я задаю свой формат для отображения линка + исключаю из выборки все элементы, принадлежащие разделу ID = 152.

Если вам нужно вывести в WordPress следующий пост из той же категории, то пригодится код ниже (при этом игнорируется раздел ID = 33):

Когда хотите работать только с текущей конкретной таксономией, указывайте ее название в параметрах (например, testimonial):

>", TRUE, " ", "testimonial"); ?>

Функция previous_post_link

Принцип работы с предыдущими записями WordPress аналогичен приведенному выше описанию, как и синтаксис. Выглядит так:

Соответствующий код:

  • format (строка) — задает формат , за которую отвечает переменная %link (добавляйте текст/теги до и после нее). По умолчанию — ‘« %link’.
  • link (строка) — анкор линка, для вставки заголовка пишите %title.
  • in_same_term (boolean) — если значение true, то будут выводиться только объекты из того же раздела блога.
  • excluded_terms — убираем ненужные категории, указывайте ID через запятую (как строку) или массивом.
  • taxonomy (строка) — определяет таксономию выборки предыдущей записи в WordPress, если активен параметр $in_same_term.

В одном из блогов использую:

%link", "<< Предыдущая", TRUE, "33"); ?>

Здесь делаем жирный шрифт + вместо заголовка элемента пишется определенная фраза (хотя лучше в перелинковке использовать тайтл). Выводятся объекты только текущей категории кроме той, у которой ID = 33.

Функция the_post_navigation

Данное решение объединяет обе ссылки на предыдущие и следующие записи WordPress. Это сделано для удобства, заменяет вызов двух функций одной. Если вам нужно получить на выходе HTML код без отображения, применяйте get_the_post_navigation() .

Синтаксис the_post_navigation максимально простой:

Где $args — набор разных не обязательных параметров:

  • $prev_text — анкор предыдущей ссылки (по умолчанию %title).
  • $next_text — аналогично текст линка но уже на следующий пост (изначально %title).
  • $in_same_term (true/false) — позволяет показывать статьи только из текущей таксономии.
  • $excluded_terms — исключаемые ID через запятую.
  • $taxonomy — название таксономии для выборки, если in_same_term = true.
  • $screen_reader_text — заголовок всего блока (по умолчанию — Post navigation).

Таким образом, мы видим, что здесь имеются такие же переменные, как и в прошлых «единичных» функциях previous_post_link, next_post_link: анкоры, выборка по таксономиям и т.п. Использование решения просто сделает ваш код более компактным, да и нет смысла повторять одни и те же параметры два раза.

Рассмотрим самую простую ситуацию, когда нужно вывести по элементам из той же категории:

"следующий: %title", "next_text" => "предыдущий: %title", "in_same_term" => true, "taxonomy" => "category", "screen_reader_text" => "Еще почитать",)); ?>

Функция posts_nav_link

Если я правильно понимаю, то ее можно использовать не только для отображения в единичной записи, но и в категорий, заметках по месяцам, и т.п. То есть в single.php она будет отвечать за ссылки на предыдущие/следующие WordPress статьи, а в архивных — за навигацию по страницам.

Синтаксис posts_nav_link:

  • $sep — разделитель, отображаемый между ссылками (раньше был::, сейчас -).
  • $prelabel — текст линка предыдущих элементов (по умолчанию: « Previous Page).
  • $nxtlabel — текст для следующей страницы/постов (Next Page »).

Вот интересный пример с картинками вместо текстовых линков:

" , "" ) ; ?>

", ""); ?>

Только не забудьте загрузить изображения prev-img.png и next-img.png в директорию images в вашем . Думаю, аналогично добавляется и другой HTML код, если, допустим, нужно использовать какие-то DIV или class при выравнивании.

Итого. По навигации там еще есть несколько других разных функций, которые вы можете найти в кодексе. Надеюсь, с этими все более-менее понятно. Насчет posts_nav_link, если честно, не уверен, позволяет ли выводить предыдущие и следующие записи на единичной странице, т.к. не тестировал, хотя в описании это упоминается. Думаю, в таком случае более эффективно и желательно использовать the_post_navigation, что поновее и с куда бОльшим числом параметров.

Если есть какие-то вопросы по навигации между постами или дополнения, пишите ниже.