Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Содержание сайт... 65535
Вызов хранимых ... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Программируемая... 65032
Invision Power ... 64202
Организация зап... 63514
Модуль Forms 60372
Создание отчето... 60355
ТЕХНОЛОГИИ ДОСТ... 56650
Пример работы с... 53767
Создание потоко... 52527
Имитационное мо... 52080
Реклама
http://kandistonpro.ru/ кандистон все о спрее кандистон.
Сейчас на сайте
Гостей: 9
На сайте нет зарегистрированных пользователей

Пользователей: 13,062
новичок: AndeR
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование ЭВМ на GPSS (три класса заданий) + Пояснительная записка
Моделирование работы узла коммутации сообщений на GPSS + Пояснительная з...
Моделирование литейного цеха на GPSS + Пояснительная записка

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
ХАКАЕМ АПОРТ
Нет, подождите, ломать этот замечательный во всех отношениях поисковик никто не собирается! Ведь под хакерством всегда понималось улучшение характеристик системы, часто не совсем традиционными методами, но все-таки улучшение, а не голимый вандализм.
Чем плох "Апорт"? Точно тем же, что и другие поисковые сервера. Прежде чем окунуться в дремучую чащу запутанных ссылок приходится утомительно дожидаться загрузки главной страницы.
У "Апорта" она, правда, не самая большая, и ничуть не увешенная баннерами, как у некоторых других (вспомнить ту же "Альта-Вситу"), но все же это раздражает. Особенно на медленных каналах.
К тому же комфортным поиск ну никак не назовешь. Приходится постоянно прокручивать экран, что бы отыскать форму ввода, и с досадой обнаруживать, что условия поиска в ней напрочь отсутствуют. А когда ищется что-то вроде ("Кремниевая долина"+история - архив - обозреватель) то каждый раз вводить ее заново становиться утомительно.
Тем более, что как бы хорош ни был "Апорт" требуемого документа он может и не найти и тогда придется отправиться восвояси к другому поисковику, а то еще и не к одному сразу.
И это на пороге нового тысячелетия? А где же автоматизация человеческого труда? Компьютер, если вспомнить, был на то и придуман, что бы решать проблемы, а не создавать новые. Словом, текущее положение вещей нам не нравится, и мы, не дожидаясь милости от далеких забугорных фирм, хотим обеспечить свой комфорт самостоятельно.
Что для этого нужно? Всего лишь найти механизм взаимодействия с поисковой системой напрямую, минуя всякие там web-странички. А дальше его уже будет можно использовать по своему усмотрению.
Например, написать простой скрипт для поиска сразу на множестве серверов. Или хотя бы, по крайней мере, интегрировать поисковик с нашим "Рабочим Столом". А что? Неплохая идея - вот ей сейчас и займемся.
Было бы очень удобно, если бы в уголке рабочего стола сидела простая формочка, в которую стоит только ввести нужный фрагмент, а уж она дальше сама облазит все сайты, обойдет и Черта и Бога, но нужный документ нам найдет.
Вообще-то это тривиальная задача, которую автор решил едва ли не в первые дни после того, как подключился к Интернету. Каково же было его удивление, когда оказалось, что до такой простой штуки додумывались далеко не все его знакомые, которые до сих пор так бы и мучались, проклиная тупость поисковиков, день ото дня плодящихся как грибы.
Начнем сначала с теории. Гипертекст, в его привычном для нас HTML-ом виде, искать ничего не способен. Там просто нет таких функций. Даже Java и VBASIC скрипты не способны к таким операциям, поскольку исполняются на вашей локальной машине и если бы они затребовали всю много гигабайтную базу любого поисковика, то вероятнее, конец света наступил бы раньше, чем она приползла по хлипкому диалапному соединению.
Поэтому возможен только один вариант, - запускать программу поиска на удаленной машине. Это можно осуществить с помощью скриптов (как правило, написанных на Перле, но не обязательно)
Чаще всего у пользователя не оказывается никаких прав доступа к ним, кроме как возможности исполнения. То есть скачать скрипт, что бы разобраться с ним и малость поправить его по своему усмотрению, оказывается нельзя.
Но это и не важно. Все равно в них не содержится ничего интересного, кроме интерфейса, то есть кода, обеспечивающего обмен между собственно самим поисковым кодом и браузером, находящимся на вашей машине.
Запуск при этом может выглядеть как: http://ИмяХоста/ИмяСкрипта?параметры. Именно это и происходит, когда вы работаете с поисковиком нормальным образом. С формы, расположенной на страничке, считывается строка и описанным выше способом передается скрипту на выполнение.
Осталось только узнать имя скрипа и поисковиком будет можно пользоваться, вовсе не обращаясь к его web-страничке, или, например, встроить код вызова в свою собственную! А почему бы и нет? Глядишь, у вас и посещаемость возрастет. Кстати, создание подобной специализированной странички, последовательно опрашивающей все существующие поисковые сервера и каталоги ресурсов, не такая плохая идея и ниже будет показано, как это сделать.
Итак, отправляемся в гости к "Апорту" и дожидаемся окончания загрузки его главной страницы. Теперь необходимо проанализировать HTML-код и найти то место, в котором происходит вызов скрипта и передача ему параметров.
Непосвященным в тонкости программирования гипертекста скажу, что в большинстве случаев для этого достаточно найти следующую последовательность "form action=" Она,конечно, не единственно возможный вариант, но весьма популярный среди разработчиков, так что этот прием срабатывает достаточно часто.
Итак, выбираем в меню "Вид" пункт "В виде HTML" и находим следующие строки:

table border=0 cellpadding=0 cellspacing=0 width=700
form action=http://www.aport.ru/search.asp method=get name=form1

Смотрите, что бы обратиться к поисковому механизму напрямую, достаточно вызвать search.asp и передать ему в качестве параметра требуемые критерии поиска.
Например, попробуем найти всю доступную информацию о фирме Microsoft. Наберем для этого в строке браузера следующее: http://www.aport.ru/search.asp?r=Microsoft и пройдет совсем-совем немного времени, как "Апорт" подумает и выдаст следующее:

Апорт нашел 1000 документов на 341 сайте по запросу: Microsoft
Неплохо для начала, не так ли? Мы не только сэкономили чуточку времени, но и получили возможность без труда встраивать вызовы поискового механизма в свои странички. Как вам понравится следующее:
Точно так же можно обращаться и к другим сайтам, не только к апорту. Кстати, формат вызова скриптов с других поисковиков можно узнать на странице того же "Апорта".
Поисковик
URL скрипта
АльтаВиста
http://www.altavista.com/cgi-bin/query
Yahoo!
http://search.yahoo.com/bin/search
Lycos
http://www.lycos.com/cgi-bin/pursuit
Infoseek
http://infoseek.go.com/Titles
HotBot
http://www.hotbot.com
MSN
http://search.msn.com/results.asp
И совсем несложными приемами можно передать один запрос множеству серверов. Но вот только в чем незадача. Все они откроют кучу окон, куда начнут вываливать уйму бесполезной информации, которая большей частью будет дублироваться.
Наверное поэтому, такой подход так и не завоевал популярности, и мы до сих пор по старинке перебираем все сервера друг за другом пока не найдем хоть что-то интересное.
Но хакеры мы или нет? Неужели не существует красивого и оригинального решения. К счастью оно есть и ниже будет рассказано, как это сделать.
В чем основная трудность в подобном подходе? Нам не нравится то, что разбор ответов множества поисковиков ложится на наши плечи, а его прием на наш хлипкий канал. Вот если бы у нас был шустрый сервер, который мог бы все это принять, обработать, отсортировать, исключить повторяющиеся ссылки и вернуть в виде компактного ответа на нашу машину... Да, вот еще бы он и ссылки заодно проверил, не мертвые ли они там чай (известная "болезнь" всех поисковиков)
Но такой сервер у нас как раз таки есть, то есть может быть! Как говорилось выше, перловые (да и не только) скрипты можно выполнять на удаленном компьютере. То есть, говоря другими словами, на сервере с быстрым каналом, который принимает мегабайты информации, обрабатывает ее и возвращаем нам компактный и лаконичный ответ.
Остается только найти службу, предоставляющую халявный доступ к CGI-BIN директории, то есть к той самой, куда мы и поместим наш перловый скрипт. Вообще-то за такой сервис принято взимать хотя бы символическую плату, но некоторые провайдеры расщедриваются на него бесплатно. Загляните, например, к http://www.virtualave.net/. Правда, хостиг вам предоставят не стразу, а в течение суток (как правило, только на следующий день), но это приемлемый срок, да и при желании можно найти множество других мест в Интернете с аналогичным сервисом. Не все из них, правда, будет шибко быстрыми, так что проверяйте этот аспект в первую очередь.
Теперь, собственно, остается всего-навсего написать такой скрипт. На само же деле это "всего-навсего" представляет трудную нетривиальную задачу и может отнять много времени, в течение которого существует хорошая возможность освоить все тонкости Перла или любого другого языка.
Ведь в CGI-BIN директории можно исполнить любой файл - от батничка, до программы на Си или Паскаль. Так что выбирайте на чем будете писать такой проект по своему вкусу. А к моменту опубликования этой статьи вы имеете все шансы ознакомиться с разработкой автора, который сейчас и работает над подобной задачей.
Быть может это будет новой вехой в истории развития поисковиков. И быть может среди читателей найдутся те, чей вариант окажется самым привлекательным и войдет в историю. Так что дерзайте.
Но это все относиться к "монстрам" программирования, а для начинающих предложим задачку попроще. Поместим вызов "апорта" на наш активный Рабочий Стол! Так, что бы можно было, не отрываясь от текущего положения дел просто ткнуть мышью в угол экрана, и быстро набить запрос, не отвлекаясь на всякие мелочи.
Вообще-то можно было сохранить страницу "Апорта" на диске и без мучений вывести ее на Рабочий Стол, с чем пятый Эксплорер справляется за раз. Но вот только страничка от "Апорта" слишком громоздкая и на экране ее разместить ну никак не удастся.
На этом собственно и все. Остается только добавить на рабочий стол, "Экран-Свойства-Интернет-Созадть-Aport.htm" и она тут же появиться на нем!
Изменим размеры окна, одновременно с этим растягивая его в ширину. А после отбуксируем в любое место экрана по своему вкусу, так, что бы получилось нечто похожее на следующее:

Наберем теперь критерий поиска и клацнем по кнопке "Search" и нажмем Enter. Если все было сделано правильно, то тут же откроется новое окно браузера и "Апорт" вывалит в него результаты поиска.
Заметим, что при этом они не исчезли из нашей формы. И не потребуется никакого труда ее изменить, например, следующим образом Microsoft + "Билл Гейтс"
Просто? Удобно? А теперь попробуйте сделать так, что бы "Апорт" не открывал нового окна, выдавал ответ в специально отведенное для него место экрана.
Уверяю, что это доставит немалое удовольствие, да и комфорт работы повысит то же. Активный рабочий стол это действительно революционное изобретение Microsoft., в чем вы еще не раз убедитесь.
Фактически вы можете самостоятельно спроектировать и создать среду общения, рассчитанную на ваши привычки и вкусы.
Например, выданный "Апортом" ответ можно дополнительно пропустить через Java скрипт или VBASIC скрипт, можно запоминать и кешировать предыдущие ответы "Апорта", да мало ли, что может вам взбрести в голову!
Так у автора работает бесхитростный скрипт, который по ключевым словам "живая камера" каждый раз ищет что-нибудь новое и случайным образом выводит одну из них в угол экрана. Вроде бы мелочь, а как умеет поднять настроение! KPNC
Опубликовал Kest October 26 2008 16:38:41 · 0 Комментариев · 5771 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Сложный калькулятор
База Allsubmitter...
Image Browser [Ис...
Прграммирование в...
WinPopup
C# Учебный курс
Matrix2D
PHP глазами хакера
MPTools
PHP 5 для "чайников"
Панель поиска
Модифицированная ...
EditButton
Базы данных в Инт...
Игра Car [Исходни...
Советы от Даниилы...
JBlabel3D
Популярные загрузки
IPAddresseEdit
StartMark

Топ загрузок
Приложение Клие... 100371
Delphi 7 Enterp... 82762
Converter AMR<-... 20046
Borland C++Buil... 11142
GPSS World Stud... 10702
Borland Delphi ... 8085
Turbo Pascal fo... 6968
Visual Studio 2... 4963
Калькулятор [Ис... 4314
FreeSMS v1.3.1 3510
Случайные статьи
Структурированные ...
Что такое конфигур...
Где мы находимся?
Сортировка Шелла +...
Размеры динамическ...
Ключевые слова в ...
Реализация модели ...
Типовая структура ...
Если хотя бы одно ...
Компонент поле ред...
Программирование в...
Открытие существую...
Дополнительные пар...
Внешнее определени...
Удаление хвостовой...
Согласие, основанн...
Дополнительные виз...
Адреса, указатели ...
Статический импорт...
Создание рабочей к...
16.10.
7.4. Закон Литтла
Денежные слоты
Microsoft - спроси...
Внешние проверки
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?