Уведомления

Группа в Telegram: @pythonsu

#1 Июль 12, 2014 11:24:35

likin
От:
Зарегистрирован: 2010-03-15
Сообщения: 114
Репутация: +  1  -
Профиль   Отправить e-mail  

Нуждаюсь в codereview.

Доброго дня.

Я PHP разработчик, собираюсь начинать работать, как Python разработчик. У меня есть тестовое задание, которое надо отшлифовать. Проведите, пожалуйста codereview, проект маленький - https://github.com/vlikin/sitemap_builder_test .
Проект строит sitemap. В данном случае, он парсит мой сайт http://shelepen.com.ua . Очень краткая информация находится сдесь - https://github.com/vlikin/sitemap_builder_test/blob/master/README.txt.

Спасибо.



Отредактировано likin (Июль 12, 2014 19:31:03)

Офлайн

#2 Июль 12, 2014 12:08:48

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10026
Репутация: +  857  -
Профиль   Отправить e-mail  

Нуждаюсь в codereview.

likin
return list([url[0] for url in urls])
Улыбнуло.

В README.txt “with” написано с “h”, хотя в коде правильно написано with, а это одно и то же слово.
likin
This is a script that builds a sitemap of a site whith a defined depth.
likin
    with open(filename, 'wb') as csvfile:

Прочитай pep8, это важно. Там ещё кое-что есть.

likin
urls = re.findall(r'<a\s{1,3}href=[\'"]?([^\'" >]+)[\'"][^>]*>?([^<]+)', html)
Вот это, наверное, самое ужасное там.

<!--
 
 <a href=hello>text</a>
 
 -->



Отредактировано py.user.next (Июль 12, 2014 12:09:53)

Офлайн

#3 Июль 12, 2014 12:53:38

likin
От:
Зарегистрирован: 2010-03-15
Сообщения: 114
Репутация: +  1  -
Профиль   Отправить e-mail  

Нуждаюсь в codereview.

Спасибо. Разбираюсь.



Офлайн

#4 Июль 12, 2014 14:04:33

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

Нуждаюсь в codereview.

Ещё добавлю.
optparse устарел. Используй argparse.
Старайся писать код, более похожий на третий питон, а именно, используй print, как функцию и ‘format’ для форматирования строк.
print лучше вообще не использовать, а даже в таких маленьких проектах использовать logger. Это приучает к аккуратности.



Офлайн

#5 Июль 12, 2014 14:25:51

4kpt_II
От: Харьков
Зарегистрирован: 2013-10-24
Сообщения: 999
Репутация: +  58  -
Профиль   Отправить e-mail  

Нуждаюсь в codereview.

Даже глянуть не могу. 404…

Офлайн

#6 Июль 12, 2014 14:47:33

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

Нуждаюсь в codereview.

На урл внимательно посмотри…



Офлайн

#7 Июль 12, 2014 15:11:49

4kpt_II
От: Харьков
Зарегистрирован: 2013-10-24
Сообщения: 999
Репутация: +  58  -
Профиль   Отправить e-mail  

Нуждаюсь в codereview.

Затупил. Просто гитхабом не пользуюсь, ты же знаешь Джитом тоже. Поэтому прохожу мимо

Отредактировано 4kpt_II (Июль 12, 2014 15:12:53)

Офлайн

#8 Июль 12, 2014 17:04:21

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

Нуждаюсь в codereview.

Только SVN, только ХАРДКОР!!! :-D



Отредактировано ZZZ (Июль 12, 2014 17:04:33)

Офлайн

#9 Июль 12, 2014 17:41:46

4kpt_II
От: Харьков
Зарегистрирован: 2013-10-24
Сообщения: 999
Репутация: +  58  -
Профиль   Отправить e-mail  

Нуждаюсь в codereview.

Неа. Только hg, только python

Офлайн

#10 Июль 14, 2014 00:46:48

likin
От:
Зарегистрирован: 2010-03-15
Сообщения: 114
Репутация: +  1  -
Профиль   Отправить e-mail  

Нуждаюсь в codereview.

ZZZ
Ещё добавлю.optparse устарел. Используй argparse.Старайся писать код, более похожий на третий питон, а именно, используй print, как функцию и ‘format’ для форматирования строк.print лучше вообще не использовать, а даже в таких маленьких проектах использовать logger. Это приучает к аккуратности.

Добавил logging. Оставил optparse, так как сдесь написано, что argparse основана на optparse, то есть не является устаревшей - https://docs.python.org/2/howto/argparse.html

Спасибо.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version