• Как и чем парсить сайты на python'е?

    @kzlv
    Пробовал всякие scrapy и прочие "фреймворки для парсинга", но приходилось с ними много бороться. В итоге пришел к написанию собственной утилиты. Построено поверх requests + lxml: первым делаешь запросы, вторым — с помощью селектора XPath забираешь данные. Ничего лишнего.
    Ответ написан
  • Чем так хорош Django?

    @kzlv
    Я прошлым летом начал изучать python в связке с django, чтобы сделать пару проектов чисто для себя — таск-менеджер, заметочный сервис, блог и всё такое.
    До этого пытался освоить PHP и Node.js, но дальше видеокурсов дело не дошло: вроде бы с плюралсайтом/кодакадеми их абстрактные бесполезные задачи решаешь, а как доходит до реальной задачи, просто не знаешь, как подступиться.

    Питон мне посоветовал пхпшник с формулировкой "Если хочешь быстро результат, бери джангу и питон". Взял. Вот правда, я жалею, что не начал раньше с них.
    Так как в самом программировании что-то понимал, у питона изучил в основном синтаксис (помогла дока и это), а у джанги не просмотрев даже треть видео пошел на сайт читать их собственные туториалы. Не мучился вообще, примитивную рабочую версию таск-менеджера сделал через 5-6 вечеров, хотя прикоснулся к джанге в первый раз. Смотрю сейчас тот код, глаза болят, но если хочется конкретно свои задачи решать, тогда это отличный вариант.
    Ответ написан
    4 комментария
  • Как организовать поиск по нескольким полям ForeignKey?

    @kzlv
    Это выглядит как кромешный говнокод, если честно.
    Можете описать подробнее? А то совершенно непонятно, что вам нужно. Если отвечать на вопрос из тайтла, то ответ вы и сами знаете:
    Accessories.objects.filter(accessories_material1__title='раз',
                               accessories_material2__title='два',
                               accessories_material3__title='и так хоть сколько полей')


    А то, что вы описали, совершенно непонятно.
    А еще у вас там не дописано название модели в пятой FK:
    accessories_material5 =  models.ForeignKey(Accessories_materia)
    Ответ написан
  • Какая хорошая система колоборативной фильтрации для python\django?

    @kzlv
    Можно и стороннее решение, если я могу его поставить и пулять данные и получать данные через api.

    Слышал о подобных затеях, но они обычно стоят как чугунный мост.

    Мы писали сами. У этой фильтрации алгоритм прост до неприличия. Гуглится мужик, который написал статью об этом методе и выложил исходник. Код не смотрел, но как минимум не увидел упоминаний Pypy, поэтому может работать медленно.
    В общем, из коробки ничего нет, это ожидаемо. Но сделать самому не сложно. По интернету ходят датасеты с Netflix Prize. Скачайте, напишите, потестите.
    Но магии не ждите. Без своего большущего датасета рекомендации будут херовенькие.

    P.S. Предикшен.ио пробовали использовать. Сожрало все ресурсы, нормальных рекомендаций не дало. Может что-то не так делали, но разбираться желания не было.
    Ответ написан
    Комментировать