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

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 [?]

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