Автор Тема: Как нажать "Подписаться" на youtube  (Прочитано 2063 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ckret [?]

  • Новичок
  • *
  • Сообщений: 44
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Youtube какой то очень вредный сервис...
Не получается кликнуть на кнопку подписаться на канал, хотя реализация функции подписаться на канал на стороннем сайте не вызвала ни каких трудностей.
Подскажите способ как победить эту кнопку.
« Последнее редактирование: Август 23, 2015, 21:41:58 от ckret »

Русское сообщество AutoIt

Как нажать "Подписаться" на youtube
« Отправлен: Август 23, 2015, 21:12:21 »

Помечен как лучший ответ пользователем ckret Отправлен Август 23, 2015, 22:50:28

Оффлайн alex33 [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 1420
  • Репутация: 177
  • Пол: Мужской
    • alekssamos ВКонтакте
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: Как нажать "Подписаться" на youtube
« Ответ #1, Отправлен: Август 23, 2015, 22:43:10 »
Попробуйте так:
Код: AutoIt [Выделить]
#include <IE.au3>
Local $sURL, $oIE, $oButtons
$sURL = "http://www.youtube.com/user/FantomasSamos/" ; ссылка на канал или аккаунт
_IELoadWaitTimeout(10000)
$oIE = _IECreate($sURL)
$oButtons = _IETagNameGetCollection($oIE, "button")
If IsObj($oButtons) Then
    For $oButton In $oButtons
        If StringInStr(StringStripWS(_IEPropertyGet($oButton, "innerhtml"), 8), ">Подписаться</span>") > 0 Then
            _IEAction($oButton, "click")
            Do
                Sleep(1000)
                ;~ ConsoleWrite("attr:" & $oButton.getAttribute("aria-busy") & @CRLF)
            Until ($oButton.getAttribute("aria-busy") = "false" Or $oButton.getAttribute("aria-busy") = "0" Or $oButton.getAttribute("aria-busy") = "")
            ExitLoop
        EndIf
    Next
EndIf
;~ _IENavigate($oIE, "ya.ru/")
 


Оффлайн ckret [?]

  • Новичок
  • *
  • Сообщений: 44

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: Как нажать "Подписаться" на youtube
« Ответ #2, Отправлен: Август 23, 2015, 22:53:17 »
Очень интересное решение ! Благодарю за помощь!  :beer:

Оффлайн alex33 [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 1420
  • Репутация: 177
  • Пол: Мужской
    • alekssamos ВКонтакте
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: Как нажать "Подписаться" на youtube
« Ответ #3, Отправлен: Август 24, 2015, 09:09:03 »
Вот пример практически в одну строку, но без проверок и не работающий в IE6.
Код: AutoIt [Выделить]
#include <IE.au3>
Local $sURL, $oIE, $oButtons
$sURL = "http://www.youtube.com/user/FantomasSamos/" ; ссылка на канал или аккаунт
_IELoadWaitTimeout(10000)
$oIE = _IECreate($sURL)
$oIE.document.querySelector("button span.subscribe-label").parentNode.click();
 


Русское сообщество AutoIt

Re: Как нажать "Подписаться" на youtube
« Ответ #3 Отправлен: Август 24, 2015, 09:09:03 »

Оффлайн cdjsend [?]

  • Новичок
  • *
  • Сообщений: 40
  • Репутация: 1
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Как нажать "Подписаться" на youtube
« Ответ #4, Отправлен: Февраль 17, 2018, 18:59:52 »
подскажите, как можно дополнить этот код чтобы визуально ничего не открывалось на экране? и можно ли такое сделать на кнопку "мне нравится" ?

Оффлайн Kaen [?]

  • Новичок
  • *
  • Сообщений: 6
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Как нажать "Подписаться" на youtube
« Ответ #5, Отправлен: Февраль 20, 2018, 20:02:30 »
Да, как можно это сделать для кнопки " мне понравилось" ?
Перебрал все классы от неё - не получается.  :stars:
ТАкже интересно как это реализовать не в ИЕ, а в браузере по умолчанию и с отключением звука  :-[

 :IL_AutoIt_1:

Русское сообщество AutoIt

Re: Как нажать "Подписаться" на youtube
« Ответ #5 Отправлен: Февраль 20, 2018, 20:02:30 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
6 Ответов
13238 Просмотров
Последний ответ Октябрь 07, 2009, 09:36:42
от akoulev
12 Ответов
13225 Просмотров
Последний ответ Декабрь 01, 2012, 02:05:11
от defens
14 Ответов
15394 Просмотров
Последний ответ Февраль 15, 2010, 11:29:38
от akoulev
4 Ответов
6229 Просмотров
Последний ответ Ноябрь 29, 2010, 01:32:35
от Zaramot
2 Ответов
2075 Просмотров
Последний ответ Декабрь 19, 2012, 12:22:19
от CreatoR
0 Ответов
1320 Просмотров
Последний ответ Декабрь 19, 2012, 16:19:28
от madmasles
3 Ответов
4449 Просмотров
Последний ответ Август 25, 2013, 10:36:23
от Godygadu
6 Ответов
4675 Просмотров
Последний ответ Март 26, 2014, 16:36:48
от Alex Tevton
8 Ответов
2872 Просмотров
Последний ответ Август 28, 2015, 14:17:10
от Yashied
3 Ответов
535 Просмотров
Последний ответ Декабрь 14, 2017, 01:48:04
от Tempo