За последние 24 часа нас посетили 54282 программиста и 1621 робот. Сейчас ищут 1185 программистов ...

Атрибуты тегов

Тема в разделе "PHP для новичков", создана пользователем EndoCrinolog, 29 авг 2017.

  1. EndoCrinolog

    EndoCrinolog Активный пользователь

    С нами с:
    4 фев 2012
    Сообщения:
    205
    Симпатии:
    1
    Адрес:
    Тольятти
    Здравствуйте. Давно пользуюсь библиотекой Simple Html Dom. Но вот только сейчас понял, что в нем нет такой функции, которая исключала бы тег из массива при наличии в его атрибуте некого значения. Типа, attribute*=value, но только наоборот.
    Подскажете, как это можно воплотить, обойдясь малой кровью.
    Для чего нужно: на сайте две ссылки стоят рядом, никак не отличаясь атрибутами. Единственное, в чем они различны, так это в том, что в атрибуте href одной половины ссылок есть значение "mondaj", а у другой нет.
    Мне вот как раз необходимо получить именно те ссылки, где этого слова нет.
    Заранее, спасибо за помощь!
     
  2. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.128
    Симпатии:
    1.248
    Адрес:
    там-сям
    понедельниг штоле?

    не надо малой кровью. парсюки должны страдать.
     
  3. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.815
    Симпатии:
    1.332
    Адрес:
    Лень
    PHP:
    1. strpos ( $url, 'mondaj' ) === FALSE
     
    #3 MouseZver, 29 авг 2017
    Последнее редактирование: 29 авг 2017
    Abyss и denis01 нравится это.
  4. EndoCrinolog

    EndoCrinolog Активный пользователь

    С нами с:
    4 фев 2012
    Сообщения:
    205
    Симпатии:
    1
    Адрес:
    Тольятти
    Ну, тоже важные люди. Например, когда один человек хочет объединить несколько сайтов поставщиков)

    Почти)) Там ссылки товаров с монтажем и без монтажа.. Видимо, наполнители сего магазина решили подшутить над заказчиками, написав в ссылке именно mondaj, а не montaj

    Я за*бся их открывать)))) Блин, про strpos я знал, но тут проблема немного глубже. Думал, будет что-то типа
    но как я понял этого не будет.
    А проблема глубже тем, что я хочу оперировать только селекторами, а не кодом. Тем самым, создав некую универсальность в парсинге. Еще проще - разрабатываю софт с веб-интерфейсом, который позволит парсинг на крон ставить.. А прелесть селекторов в том, что их можно будет просто хранить в базе, тем самым, просто подключая в нужное место кода. Или у Вас есть идеи, как решить эту проблему?

    UPD1. В голову пришли регулярные выражения. Но я в них не смыслю... Поможете?
    Вот код первой ссылки:
    HTML:
    1. <td style="border-top: 0; padding-top: 0;">
    2.                     <a class="btn btn-info btn-block" href="/cat/chastnaya-kanalizaciya/rostok_431.html" style="margin-top: 5px">Подробнее</a>
    3.                 </td>
    Вот вторая.
    HTML:
    1. <td style="border-top: 0; padding-top: 0;">
    2.                     <a class="btn btn-info btn-block" href="/cat/chastnaya-kanalizaciya/rostok-mondaj_432.html" style="margin-top: 5px">Подробнее</a>
    3.                 </td>
    Как видите - одинаковые. Отличаются наличием слова mondaj.
    Как через регулярку можно вытащить ссылку БЕЗ слова mondaj?
     
  5. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.815
    Симпатии:
    1.332
    Адрес:
    Лень
    так тебе селекторы ебаные нужны или отсутствие ебаного слова mondaj (манды) в ссылках ?
     
  6. EndoCrinolog

    EndoCrinolog Активный пользователь

    С нами с:
    4 фев 2012
    Сообщения:
    205
    Симпатии:
    1
    Адрес:
    Тольятти
    Мне нужна такая хуета, которую можно будет сохранить в качестве ебучего параметра в базу. Чтобы потом, по сути, редактировать этот параметр мог юзер.

    UPD1. И эта хуета должна делать так, чтобы парсились hrefы ссылок без mondы

    UPD2. [​IMG]
    Вот что я имею в виду.
     
  7. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.815
    Симпатии:
    1.332
    Адрес:
    Лень
    так вьеби array_map и через мясорубку ( strpos ) отфильтруй ссылки хуйли
     
  8. EndoCrinolog

    EndoCrinolog Активный пользователь

    С нами с:
    4 фев 2012
    Сообщения:
    205
    Симпатии:
    1
    Адрес:
    Тольятти
    Нее... Если говорить об универсальности, то этот способ вообще не будет универсальным. Он будет только для ДАННОГО сайта..
    Но видимо, придется много думать, как это воплотить...
    --- Добавлено ---
    Хотя пришла идея в голову... Типа, также добавить таблицу фильтров... А в ней указывать тип фильтрации (должно/не должно содержать, точное/неточное совпадение) и само слово-фильтр..
     
  9. TeslaFeo

    TeslaFeo Старожил

    С нами с:
    9 мар 2016
    Сообщения:
    2.984
    Симпатии:
    759
    Обратись к поставщикам с предложением запилить им API.
    И денег больше и занятие благороднее. :)
     
  10. Abyss

    Abyss Старожил

    С нами с:
    12 дек 2015
    Сообщения:
    1.298
    Симпатии:
    218
    Адрес:
    Default city
    Ну хз, хз. А вдруг совок и/или долбаёбы ? Апасно.