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

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 Гуру
  • *****
  • Сообщений: 1419
  • Репутация: 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 Гуру
  • *****
  • Сообщений: 1419
  • Репутация: 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 [?]

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

Оффлайн Kaen [?]

  • Новичок
  • *
  • Сообщений: 5
  • Репутация: 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 Ответов
12808 Просмотров
Последний ответ Октябрь 07, 2009, 09:36:42
от akoulev
12 Ответов
12712 Просмотров
Последний ответ Декабрь 01, 2012, 02:05:11
от defens
14 Ответов
14837 Просмотров
Последний ответ Февраль 15, 2010, 11:29:38
от akoulev
4 Ответов
6070 Просмотров
Последний ответ Ноябрь 29, 2010, 01:32:35
от Zaramot
2 Ответов
1992 Просмотров
Последний ответ Декабрь 19, 2012, 12:22:19
от CreatoR
0 Ответов
1286 Просмотров
Последний ответ Декабрь 19, 2012, 16:19:28
от madmasles
3 Ответов
4219 Просмотров
Последний ответ Август 25, 2013, 10:36:23
от Godygadu
6 Ответов
4459 Просмотров
Последний ответ Март 26, 2014, 16:36:48
от Alex Tevton
8 Ответов
2752 Просмотров
Последний ответ Август 28, 2015, 14:17:10
от Yashied
3 Ответов
461 Просмотров
Последний ответ Декабрь 14, 2017, 01:48:04
от Tempo