пройтись по всем словам из файла ...

Тема в разделе "WASM.WIN32", создана пользователем h0kum, 21 фев 2005.

  1. h0kum

    h0kum New Member

    Публикаций:
    0
    Регистрация:
    7 авг 2003
    Сообщения:
    47
    вот конкретный пример:

    у меня есть ключевые слова в файле, которые при встрече в урле надо банить его, типа:

    porno

    girls

    pupsik.ru

    ...

    банлист я считываю в память.

    пришел ко мне УРЛ:

    www.porno.com



    и вот мне из банлиста надо брать "porno" и посмотреть есть ли он в урле www.porno.com



    если PORNO нету взять GIRLS и так далее

    для этого же мне надо каждое слово выдергивать из банлиста

    вот я хочу как можно проще выдергивать, я пока представляю только так как бежать по строке и формировать посимвольно PORNO каждый раз, но мне кажется так долго. может что проще знаете? если отрыть файл и fgets'сом то тоже долго



    скорость критична, CiscoPIX на обработку может много запросов передавать, и их надо все обрабатывать быстро
     
  2. Dr.Golova

    Dr.Golova New Member

    Публикаций:
    0
    Регистрация:
    7 сен 2002
    Сообщения:
    348
    В память зачитай, на строчки разложи в массив и используй какого нибудь бойера-мура без учета регистра.

    ЗЫ: И вот из-за таких умников некоторые пользователи не могут скачать антивирусную базу с названием pornware =)
     
  3. h0kum

    h0kum New Member

    Публикаций:
    0
    Регистрация:
    7 авг 2003
    Сообщения:
    47
    :)

    зато какая экономия трафика, там ведь и банеры можно вписать, он их тоже обрезает :)

    на асме я плохо программирую, не все знаю.

    на РНР я бы всё засунул в двухмерный массив и бегал по нему, на асме пока слабо представляю :dntknw:
     
  4. ssx

    ssx Member

    Публикаций:
    0
    Регистрация:
    19 авг 2003
    Сообщения:
    336
    h0kum

    а неужели ничего готового ты не нашел?
     
  5. SteelRat

    SteelRat New Member

    Публикаций:
    0
    Регистрация:
    26 авг 2004
    Сообщения:
    409
    У меня прокси также работал, ничего нового не придумал как промапировать файл (с эталонами) в память и искать по записям. Размер записи был фиксирован, в БД еще хранились имена файлов (с путем) на которые надо подменять, н-р увидил в заголовке:

    GET / HTTP 1.1

    ...

    host www.porno.com

    ...

    А клиенту в сокет соответствующий .htm файл с соответствующей надписью :)

    Ещё можно разделить на сайты и банеры (тоже внести в БД). Проверяй сначала сайты (поиск в строке "host") Затем банеры (это в строке "GET")
     
  6. h0kum

    h0kum New Member

    Публикаций:
    0
    Регистрация:
    7 авг 2003
    Сообщения:
    47
    готовое для CiscoPIX?

    если да, то готовое есть на перле, мы написали на питоне, но это всё ведь интерпритаторы, ладно еще у нас не все люди умеют в инете лазить, если начнут, скрипт загнется :)

    -----

    в начале загрузки программы, открыть файл и по строкам считывать его в массив, завести переменную которая будет держать в себе количество записей в массиве. массив типа двухмерного условно по 32 символов в строке, так наверно проще будет, в самом начале притормоз а потом быстро будет работать.