Pull to refresh

Comments 18

Возможно лучше воспользоваться assert'ом?

if len(datefrom) != 10 or len(dateto) != 10:
    raise DnevnikError("Неверно указаны dateto или datefrom", "Parameters error")
if str(studyyear) not in datefrom:
    raise DnevnikError("StudyYear должен соответствовать datefrom", "Parameters error")


Невероятно

choose = '%D0%9F%D0%BE%D0%BA%D0%B0%D0%B7%D0%B0%D1%82%D1%8C'


:wow:

subject = [i[2],
  i[0].replace('\n\r\n                        ', '').replace(
      '\r\n                    \n', ''),
  i[3].replace('\n\n', '').replace('\xa0', ' ').replace('\r\n        \t\t\t ', '').replace(
     '\r\n                \r\n\t\t\t\t    \n', '')]


И ещё 100500 пунктов...

В общем, реализация - :crap:, а идея хорошая

Спасибо за фидбэк! Буду исправлять

Не обращайте внимания, человек выше просто самоутвержиться за ваш счет решил.

Спасибо за то что выложили в открытый доступ - тоже хотел парсить, но у них там структура конечно адская для парсинга, я открыл - посмотрел и закрыл)

Вчера думал, что автор троллирует всех, но потом узнал, что это 12ти летний парень, который код скорее всего пишет впервые. Порицаю себя за вчерашний коментарий. Автор большой молодец! Желаю чтобы автор не переставал развиваться и всё у него прокнуло с библиотекой

Отличное работа, сам занимался подобным в начале карьеры разработчика.

А для того, чтобы писать красивый код, с эффективным использованием функционала языка, советую прочитать пару книг по разработке, я бы выбрал "A byte of Python". По моему мнению - лучшая для новичка.

Насчёт assert'ов возражу, при отключённом режиме отладки (например, при запуске с ключом -O2) assert'ы не будут делать ничего от слова совсем.

О круто, сам уже пару месяцев парсер делаю для этого поделия (dnevnik.ru). Какие планы на развитие проекта?

Пока что буду фиксить некачественный код по советам Хабровчан из комментариев. Потом буду придумывать новые методы и расширять функционал. Вот мне там ниже рассказали о /currentprogress/choose?userComeFromSelector=True

Попробую с помощью этого какой-нибудь новый метод написать. Например, для просмотра результатов недели

я надеюсь пулл-реквесты на гитхабе приветствуются? а то я хотел бы поучаствовать в разработке (насколько моих знаний хватит).

Конечно приветствуются! Я только за

Реализация конечно никуда не годится.

И самое главное там же есть доступ просто к гос. услуге по информации успеваемости /currentprogress/choose?userComeFromSelector=True открывается в плоскую страницу, также имеет все оценки и информацию о ДЗ. Парсить её куда проще.

Не знал об этой услуге. Спасибо, что рассказали. Попробую добавить метод для просмотра результатов недели

Не могу утверждать, но скорее всего приложение дневник ру общается с сервером по нормальному апи. Если нужно - могу посмотреть и скинуть запросы

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

Если в платном виде показывает - значит апи для этого есть. Ну, а скачать всегда можно на 4pda

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

Sign up to leave a comment.

Articles