Kildor
13/04/2005 05:21
adBlocker для оперы

на _//nontroppo.org/wiki/OperaPythonAdblock_ есть скрипт, позволяющий реализовать ad-Block одним нажатием клавиши.
Однако проблема в том, что написан он на питоне.
Code:

import sys, os
sciezka="C:\\PATH\\adblock.css"
plik=open(sciezka,"r")
clik=plik.read()
plik.close()
plik=open(sciezka,"w")
plik.writelines('img[src="'+sys.argv[1]+'"]')
if clik.endswith("}"):
plik.writelines(',\n')
else:
plik.writelines('{display:none !important;}')
plik.writelines(clik)
plik.close()


Я так подозреваю, что можно его переписать и на vbs, однако я vbs не знаю…
Не займётся ли этим кто-нибудь, знающий как под виндой записать строку в файл? ;-)

PS: Сразу, на случай если надо, краткий перевод статьи.
Скачать _//python.org/download/_, установить его.
Создать пустой CSS файл для хранения правил.
подключить его к опере.
Вставить пункт меню Code:
Item, "Destroy image" = Copy image address & Execute program,"C:\PATH\adblock.py","%c" & Select user CSS file,1 & Deselect user CSS file, 1


в разделы
Code:
[Image Popup Menu]
[Image Link Popup Menu]


используемого файла с настройками меню.
И собственно всё. ;-) наводишь мышою на ненужный рисунок, из меню выбираешь пункт „Destroy image“. Радуешься жизни… ;-)
Select user CSS file,1 & Deselect user CSS file, 1 — вот тут вот вместо „1“ надо вставить номер своего стиля.


Canis
13/04/2005 07:55
Re: adBlocker для оперы

В ответ на:
Однако проблема в том, что написан он на питоне.

Да это не проблема, это кошмар! Закачивать 10 Мб дуру ради того, что можно с успехом делать средствами CSS! Впрочем, Python у меня есть, правда, старый, так что буду пробовать.


Kildor
13/04/2005 17:26
Re: adBlocker для оперы

Смысл питона в том, что он позволяет одним кликом дописывать строку в файл ad-block.css.
Поэтому я и говорю про vbs, думаю что можно сделать такое и при помощи встроенных в винду средств…


Dennis_HAWKS
22/04/2005 12:21
Re: adBlocker для оперы

Блин.10 метров.. жалко и долго. Но способ интересный.
Вечером буду пробовать.
Кстати в уже имеющийся файл (непустой) можно писать?


VVSite
23/04/2005 13:15
Re: adBlocker для оперы

Привет народ!
Это классная идея по блокировке рисунков, только питона у меня нету. Вобщем нацарапал скриптик в JSCRIPT кому надо берите _//vvs.post.lg.ua/Opera7/rezka.zip_. Установка такая же как у питоновского скрипта.


Kildor
23/04/2005 14:40
Re: adBlocker для оперы

О!
Именно это я и хотел увидеть, причём уже очень и очень давно…
Огромнейшее спасибо…


Stinger
23/04/2005 15:22
Re: adBlocker для оперы

VVSite

Спасибо. Теперь можно обойтись без тяжеловесного питона. Есть несколько вопросов.

1. А если твоему скрипту подсунуть не пустой anti-banner.css, а уже с настроенными правилами, он его перезапишет с нуля?

2. Вносить картинки в css-фильтр можно только по URL... А как насчет того, чтобы фильровать их по размеру?

3. Пожелание. Можно ли сделать на JS небольшое диалоговое окошко, в котором можно скорректировать URL и желательно размер картинки? Появление окошка естественно по желанию - если оно понадобится, то просто раскомментировать несколько строк в js-файле.


Kildor
23/04/2005 15:28
Re: adBlocker для оперы

2 — сделай 2 ад-блокера
по размеру советую пользовать адблокер от jor
_//my.opera.com/jor/journal/41_
3 — afaik такого нельзя… Хотя, если не привязывать это окно к опере — пожалуй попытаться стоит.


VVSite
23/04/2005 16:03
Re: adBlocker для оперы

В ответ на:

1. А если твоему скрипту подсунуть не пустой anti-banner.css, а уже с настроенными правилами, он его перезапишет с нуля?


Нет он не перезаписывает файл а дополняет. У меня у самого anti-banner.css давно стоит.

В ответ на:

2. Вносить картинки в css-фильтр можно только по URL... А как насчет того, чтобы фильровать их по размеру?


М-м-м, не знаю-не знаю, поищу конечно, но навряд-ли такое возможно со внешними программами.

В ответ на:

3. Пожелание. Можно ли сделать на JS небольшое диалоговое окошко, в котором можно скорректировать URL и желательно размер картинки? Появление окошка естественно по желанию - если оно понадобится, то просто раскомментировать несколько строк в js-файле.


диалоговое окно в JScript отсутствует, в принципе можно прикрутить окно из IE, но опять же только для линка рисунка.


VVSite
23/04/2005 16:06
Re: adBlocker для оперы

В ответ на:

Именно это я и хотел увидеть, причём уже очень и очень давно…
Огромнейшее спасибо…


Пожалуйста
Самому надоело anti-banner.css править, каждый раз, когда банер вылазит в ненужных местах.


Dennis_HAWKS
23/04/2005 16:55
Re: adBlocker для оперы

Что-то у меня стиль динамически не обновляется. Хоть и добавлено Code:
Item, "Destroy image" = Copy image address & Execute program,"C:\Program Files\Opera76\Styles\user\adblock.pyw","%c" & Select user CSS file,15 & Deselect user CSS file, 15 & Select user CSS file,15 & Deselect user CSS file, 15

Приходится руками обновлять. У меня файл №15
Может синтаксис неверен?


Kildor
23/04/2005 17:47
Re: adBlocker для оперы

неверен
надо
Deselect
user CSS file, 15 & Select user CSS file,15 & Deselect user CSS file, 15 & Select user CSS file,15
и вместо 15 поставить номер твоего anti-banner.css в operadef6.ini минус 1


Dennis_HAWKS
23/04/2005 17:53
Re: adBlocker для оперы

ОО!!! минус 1!! Спасибо! а почему минус 1?

VVSite
23/04/2005 19:28
Re: adBlocker для оперы

Народ!
Выложил новую версию скрипта по блокировке рисунков _//vvs.post.lg.ua/Opera7/rezka.zip_.

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

Перед установкой скрипта прочтите readme.htm


Kildor
24/04/2005 02:44
Re: adBlocker для оперы

Потому, что
[Local CSS Files]
Name 1=Emulate text browser
Translated name 1=69483
File 1=D:\Program Files\Opera75\styles\user\textonly.css

Но при этом, команда для включения/выключения стиля
Deselect user CSS file, 0 & Select user CSS file, 0
Поэтому минус один…


Dennis_HAWKS
24/04/2005 11:16
Re: adBlocker для оперы

Ага спасибо!
А наличие пробела после запятой влияет?


Stinger
26/04/2005 16:24
Re: adBlocker для оперы

VVSite

Есть предложение добавить в скрипт функцию удаления из adblock.css самой последней строки. Это полезно например в случае, когда по ошибке занес полезную картинку в фильтр, ну или просто хочешь вернуть баннер на место, а лезть в css ручками(редактором) нет никакого желания.Менять на авторский режим - тоже не вариант, ведь начнет грузиться остальная ненужная реклама. Так что подумай плиз над реализацией .
Функция должна срабатывать только в том случае, когда скрипт запускается с определенным параметром. Таким образом появится возможность приделать к меню Оперы еще один пункт "Undo last block image", т.е. Отменить последнюю блокировку. По-моему хорошая идея.


VVSite
27/04/2005 05:46
Re: adBlocker для оперы

Сделаем.

VVSite
27/04/2005 09:01
Re: adBlocker для оперы

Сделал удаление последней строки, забирай на _//vvs.post.lg.ua/Opera7/rezka.zip_

Alcher
28/04/2005 01:59
Re: adBlocker для оперы

почему у меня вылазиет эта ошибка, если я выбираю пункт "Destroy Image"?
Ошибка:
Сценарий: C:\Program Files\Opera\rezka.js
Строка: 23
Символ: 2
Ошибка: Разрешение отклонено
Код: 800А0046


VVSite
28/04/2005 07:17
Re: adBlocker для оперы

В ответ на:

почему у меня вылазиет эта ошибка, если я выбираю пункт "Destroy Image"?
Ошибка:
Сценарий: C:\Program Files\Opera\rezka.js
Строка: 23
Символ: 2
Ошибка: Разрешение отклонено
Код: 800А0046



А какая винда у тебя? Если 98 - то скрипт не будет работать. Т.к. в 98 WSH отсутствует обработка ошибок. Установи новый WSH - вот _//www.microsoft.com/downloads/results.aspx?displaylang=en&freeText=wsh_ на файлы


Alcher
28/04/2005 12:28
Re: adBlocker для оперы

у меня WinXP SP2...

Alcher
28/04/2005 12:50
Re: adBlocker для оперы

скачал, поставил. теперь 30-ая строка

VVSite
28/04/2005 13:01
Re: adBlocker для оперы

В ответ на:
у меня WinXP SP2...


Тогда, возможно у тебя заблокирован вызов ActiveX из скриптов WSH. Тут я ничем не помогу, т.к. у меня не стоит SP2. Покопайся в Центре безопасности.


Alcher
29/04/2005 01:11
Re: adBlocker для оперы

хорошо, попробую

Stinger
29/04/2005 09:42
Re: adBlocker для оперы

Вот еще Adblock-расширение написанное на языке C++ под win32. Для блокирования картинок также использует пользовательский CSS. Есть оригинальные возможности:
Block link only
Block all links containing this image

Зато отсутствует функция отмены последней блокировки (как в скрипте от VVSite).

Скриншот Opera + Adblock(c++):
_http://www.neowin.net/forum/uploads/post-72-1114624695.png

Скачать
_//home.tbbs.net/shadow/operaforum/cpp_adblock-v.03.zip_


ZyclonB
30/04/2005 15:26
Re: adBlocker для оперы

Вопрос к знающим- как избавиться - установленный и прописанный скрипт rezka.js пишет вот что:
Сообщение: Сервер сценариев Windows
Сценарий: c:\Program Files\Opera7\rezka.js
Строка: 12
Символ: 1
Ошибка: 0х800700С1
Код: 800700С1
Источник: (null)
И посылает далеко, ничего не делая....


VVSite
04/05/2005 05:54
Re: adBlocker для оперы

М-да, строка 12 сожержит код:

Code:

var shell=new ActiveXObject("WScript.Shell");



Это значит что невозможно создать объект WScript.Shell - это ключевой т.с. элемент без него ничего работать не будет. Если у тебя XP SP2 копайся в центре безопасности, возможно у тебя стоит запрет на создание объектов через JScript. Или еще один момент - у тебя установлен хитрый антивирь который блокирует создание объектов.


ZyclonB
04/05/2005 20:24
to VVSite

За совет спасибо - действительно антивир прищемил всю деятельность талантливо... Итог - новое сообщение от системы:
WScript.exe: Точка входа не найдена
Точка входа в процедуру DoOpenPipeStream не найдена в библиотеке DLL ScrRun.dll
Причем на второй машине все ОК. Не знаю, на что думать..


VVSite
05/05/2005 05:24
Re: to VVSite

А какой антивирь у тебя?

ZyclonB
05/05/2005 05:55
Re: to VVSite

NOD32 и Safe'n'Sec.... и все равное не работает... не восстанавливать же Ghost-ом систему?...

VVSite
05/05/2005 06:39
Re: to VVSite

Ты что Эт ж последнее дело
Я думаю - может тебе попробовать WSH переустановить - ссылка на предыдущей странице.


Mister Nobody
06/05/2005 15:18
Re: to VVSite

Молодец, VVSite, релизовал хорошую идею на приемлимом уровне, а то всякие питоны или скомпилированные проги это все не то, только средства оперы и операционки это тема %)
осталось инсталлятор написать =)


VVSite
06/05/2005 18:36
Re: to VVSite

Ну что тут скажешь, - спасибо конечно . Только, как видно, работает не у всех одинаково хорошо. Я, конечно, здесь не виноватый - антивири надо выбирать не такие крутые, чтоб системные вещи не блокировали.

ZyclonB
06/05/2005 20:37
Продолжение

Се приятно и удобно - вырезается.. только вот окошечко со строкой, содержащей нежелательный баннер (просто пикчер) появляется ПОД Оперой, а не поверх приложения.
А что еще кроме disable flash, anti-banner, ad-block можно привертеть под Оперу? Даже интересно стало... не броузер, а комбайн мультимедийный и все в одном.

П.С. Спасибо за верные предположения, что помогли!


VVSite
07/05/2005 11:07
Re: Продолжение

В ответ на:
появляется ПОД Оперой, а не поверх приложения.


Странно, сколько у себя не пробовал, - окно для редактирования URL все время ПОВЕРХ Оперы "возникает".

В ответ на:
А что еще кроме disable flash, anti-banner, ad-block можно привертеть под Оперу? Даже интересно стало... не броузер, а комбайн мультимедийный и все в одном.


Заходи на мой _//vvs.post.lg.ua_ - там раздел для Оперы есть - может что и выберешь. Кроме того к Опере можно прикрутить кучу плагинов - _//pao-reklama.narod.ru/soft_programs.html_ можно взять.


AlexSM
16/05/2005 04:22
Re: Продолжение

при выботе „Destroy image“ удаляется картинка только если в ручную выключить и включить стиль или еще раз выбрать „Destroy image“, у всех так?

Kildor
16/05/2005 04:41
Re: Продолжение

не обязательно…
Это бывает, когда скрипт работает очень медленно, и не успевает записать изменения в файл с блоком.
Опера его перечитывает, а изменений нет никаких…
Можно попросить её два раза или три перечитать, я не уверен, что в команде можно задать паузу для оперы…


Dennis_HAWKS
16/05/2005 06:13
Re: Продолжение

Скачал себе c++adblock v.0.4. Настроил - блокировка идет не только изображений, но и ссылок, и-фрэймов и всех ссылок содержащих опред. изображение.
См. аттач.


Gogo
26/05/2005 15:55
Re: Продолжение

Как забанить сылки вида: _//ad4.bannerbank.ru/bb.cgi?cmd=ad&pubid=73338698&pg=1&vbn=646&num=1&w=468&h=60&nocache=*****_ (где вместо *, любые цифры)?

Dennis_HAWKS
26/05/2005 16:13
Re: Продолжение

через filter.ini

Gogo
26/05/2005 17:35
Re: Продолжение

А поподробние =).

Kildor
27/05/2005 01:57
Re: Продолжение

_//opera.nsk.su/?topic=utils#optools_

Razer
03/08/2005 09:24
Re: to VVSite

При выборе пункта "Destroy Image" получаю вот что:

Сценарий: C:\Program Files\Opera Tools\Agblock\rezka.js
Строка:3
Симлол:45
Ошибка: Предполагается шестнадцатиричное число
Код: 800А03FF
Источник: Ошибка компиляции Microsoft JScript

В строке 3 всё вроде как надо:

Code:
 //-------Destroy images-------//

/*VVSite 2005*/
var pathM='C:\Program Files\Opera75\styles\user\adblock.css'; //Где лежит файлец

var ForReading=1;




Знаю, что подобные вопросы уже были, но всё-таки, как побороть глюк?
Антивирь- Kaspersky 5.0.372 Personal Pro, Win XP SP2, Opera 7.50


S_M
03/08/2005 11:21
Re: to VVSite

Razer
Вот твоя правильная строка
Code:
var pathM='C:/Program Files/Opera75/styles/user/adblock.css'; //Где лежит файлец



VVSite
03/08/2005 14:37
Re: to VVSite

Народ! Читайте readme.htm, там русскими буквами написано что и как делать

Razer
03/08/2005 15:18
Re: to VVSite

S_M, VVSite
Спасибо!
Каюсь. Невнимательно прочитал...





  
Отправить email администрации operaman.ru - Home

© 2000-2002. Николай Ковальчук - All rights reserved
Rambler's Top100