Что нового

[Сеть, интернет] Нажатие кнопки "Пропустить" на сайте youtube

xlgrgrc

Знающий
Сообщения
91
Репутация
7
При просмотре видео на youtube появилась необходимость нажимать на кнопку "пропустить" автоматически. Так сказать пропустить платную рекламу.
Хотелось бы нажимать автоматически. Но не - передвинуть мышку по координатам и нажать - и не по поиску пикселей.

Есть#include <IE.au3>, можно ли как то сделать это через эту библиотеку?

Подскажите хотя бы куда мне копать ;D
Заранее спасибо.
 

Вложения

  • Пропустить рекламу.jpg
    Пропустить рекламу.jpg
    95.2 КБ · Просмотры: 32

InnI

AutoIT Гуру
Сообщения
4,950
Репутация
1,445
xlgrgrc [?]
куда мне копать
Правильнее, вероятно, копать в сторону Flash. Но можно попробовать UIAutomate (проверял на Win7 x86, IE10, Flash 15.0.0.152)
Код:
#include "UIAutomate.au3"

Do
  $oFlash = 0
  $aButtons = 0
  $aRect = 0
  Sleep(1000)
  $oFlash = _UIA_GetElementFromHandle(ControlGetHandle("[class:IEFrame]", "", "MacromediaFlashPlayerActiveX1"))
  If @error Then ContinueLoop
  $aButtons = _UIA_FindAllElements($oFlash, $UIA_ControlTypePropertyId, $UIA_ButtonControlTypeId)
  If @error Then ContinueLoop
  For $i = 1 To $aButtons[0]
    $aRect = _UIA_ElementGetBoundingRectangle($aButtons[$i])
    $w = $aRect[2] - $aRect[0]
    $h = $aRect[3] - $aRect[1]
    If ($w = 247 And ($h = 104 Or $h = 105)) Or ($w = 195 And $h = 93) Then
      _UIA_ElementDoDefaulAction($aButtons[$i])
      ExitLoop
    EndIf
  Next
Until 0
 
Автор
X

xlgrgrc

Знающий
Сообщения
91
Репутация
7
InnI сказал(а):
xlgrgrc [?]
куда мне копать
Правильнее, вероятно, копать в сторону Flash. Но можно попробовать UIAutomate (проверял на Win7 x86, IE10, Flash 15.0.0.152)
Код:
#include "UIAutomate.au3"

Do
  $oFlash = 0
  $aButtons = 0
  $aRect = 0
  Sleep(1000)
  $oFlash = _UIA_GetElementFromHandle(ControlGetHandle("[class:IEFrame]", "", "MacromediaFlashPlayerActiveX1"))
  If @error Then ContinueLoop
  $aButtons = _UIA_FindAllElements($oFlash, $UIA_ControlTypePropertyId, $UIA_ButtonControlTypeId)
  If @error Then ContinueLoop
  For $i = 1 To $aButtons[0]
    $aRect = _UIA_ElementGetBoundingRectangle($aButtons[$i])
    If ($aRect[2] - $aRect[0] = 247) And ($aRect[3] - $aRect[1] = 105) Then
      _UIA_ElementDoDefaulAction($aButtons[$i])
      ExitLoop
    EndIf
  Next
Until 0

Спасибо. Вечером дома буду тестить. Пока не до конца понял. Но разберусь.

Скачал на работе. Win7x64 установилUIAutomate.au3.
Запустил. Висит в трее.
ЗАпустил ютуб. Реклама жива. Запустил на трех браузерах. Ноль реакции.
 
Автор
X

xlgrgrc

Знающий
Сообщения
91
Репутация
7
InnI сказал(а):
xlgrgrc [?]
Кнопка меняет свои размеры в зависимости от размера окна IE. Расширил условие. Пробуйте.


ДА все теперь как часы... Появляется реклама и буквально через секунду кнопка нажимается сама...
Вообще отлично.
Спасибо большое за помощь )))
 

ckret

Новичок
Сообщения
44
Репутация
0
Что то пошло не так ... Нужна помощь!

Код:
"C:\Documents and Settings\?????????????\??????? ????\propusk.au3" (55) : ==> Unknown function name.:
_UIA_ElementDoDefaulAction($aButtons[$i])
^ ERROR
>Exit code: 1    Time: 5.465
 

ckret

Новичок
Сообщения
44
Репутация
0
Слава Богу, ничего серьезного! ))
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
А не проще ли поставить Adblock Plus и забыть про рекламу навсегда?
 
Верх