| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > VB6 > Помогите сделать программу для защиты... |
| Автор: Vlad22 15.10.2006, 17:29 |
| Здравствуйте! Помогите, пожалуйста, создать программу для защиты гиперссылок на странице от спам-роботов и поисковиков при помощи JS. Её суть в том, что она ищет в тексте гиперссылки на сторонние источники (http, https, ftp, mailto и т.д., а локальные, типа, <a href="../main.htm">Главная</a> - пропускает) и преобразует их в <a onclick="open№('№');" href="#"> (№ - номер ссылки), а сами URL-ы или mailto - переносятся в .js с одноимённым именем обрабатываемой страницы. После тега </TITLE> добавляется <script language=Javascript src=имя_обрабатываемой_страницы.js></SCRIPT> Пример: КОД СТРАНИЦЫ poiskoviki.htm ДО ОБРАБОТКИ: <HTML><HEAD><TITLE>Поисковики</TITLE> <META http-equiv=Content-Type content="text/html; charset=Windows-1251"> <META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD> <BODY background=12.jpg> <a href="http://www.yandex.ru">Яндекс</a><BR> <a href="http://www.rambler.ru">Рамблер</a> </BODY></HTML> КОД СТРАНИЦЫ poiskoviki.htm ПОСЛЕ ОБРАБОТКИ: <HTML><HEAD><TITLE>Поисковики</TITLE> <script language=Javascript src=poiskoviki.js></SCRIPT> <META http-equiv=Content-Type content="text/html; charset=Windows-1251"> <META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD> <BODY background=12.jpg> <a onclick="open1('1');" href="#">Яндекс</a><BR> <a onclick="open2('2');" href="#">Рамблер</a> </BODY></HTML> СОДЕРЖАНИЕ ФАЙЛА poiskoviki.js: function open1(name) { window.focus(); window.open('http://www.yandex.ru');} function open2(name) { window.focus(); window.open('http://www.rambler.ru');} Так обрабатываются все имеющиеся на странице ссылки на сторонние источники. При этом уничтожаются target=_blank, target=_self и т.д., но style=, alt= и др. остаются неизменными. Помогите, пожалуйста, сделать такую программу и, чтобы она могла сразу обрабатывать много файлов. Заранее спасибо! |
| Автор: Тутанхамец 16.10.2006, 13:13 | ||
Так может тебе сюда: http://www.forum.vingrad.ru/index.php?showforum=10 |
| Автор: Vlad22 16.10.2006, 15:58 |
| Мне нужен не скрипт, а именно ПРОГРАММА.exe для конвертирования. Мне сказали, что на VB можно сделать. |
| Автор: mihanik 16.10.2006, 16:02 |
| Т.е. взять файл *.htm и обработать его? |
| Автор: Тутанхамец 16.10.2006, 17:36 |
| В принципе сложного ничего нет. Просто разделываешь текст веб-страницы на кусочки с помощью функций Mid, Instr, Left, Right, Ucase, Lcase и т.п. Подробнее про них смотри в MSDN. Геморойно однако будет предусмотреть все нюансы разметки типа двойных или одинарных кавычек или вообще их отсутствия. В общем, работа не на пять минут. Возьмись, делай, спрашивай, мы подскажем. Но если ты работаешь с JS, то имхо проще написать js скрипт для WSH или сделать HTML-application. В js много средств для парсинга. |
| Автор: cardinal 17.10.2006, 00:05 |
| Vlad22, пользуйтесь тегами "код"! |
| Автор: mihanik 17.10.2006, 06:45 |
Ну, в принципе, и в бейсике можно для парсинга использовать регулярные выражения... |