Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.52/25: Рейтинг темы: голосов - 25, средняя оценка - 4.52
2 / 1 / 1
Регистрация: 16.08.2019
Сообщений: 48

Данные о погоде с Я.Погода. (готовый код, прошу критику)

16.08.2019, 10:29. Показов 5262. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет, хочу выложить свой первый исходный код "Yandex weather widget". Прошу строго не судить, так как только начинаю изучать этот замечательный язык)
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import urllib.request
 
def city_input(a):
    print("Напиши свой город на транслите прописнымы буквами. Например Москва = moscow.")
    a = str(input(">>> "))
    return a
city = str("https://yandex.ru/pogoda/" + str(city_input(0)))
 
def main_site():
    global fp
    fp = urllib.request.urlopen(city)
    global mybytes
    mybytes = fp.read()
 
    global mystr 
    mystr = mybytes.decode("utf8")
    fp.close()
    
def temp_online():
    main_site()
    temp_index = '"temp__value">'
    temp = mystr[(mystr.find(temp_index) + 14):(mystr.find(temp_index) + 14)+3]
    print("Температура: ", temp)
temp_online()
 
def feel_like():
    main_site()
    feel_l_index = 'Ощущается как</dt><dd class="term__value"><div class="temp"><span class="temp__value">'
    feel_l = mystr[(mystr.find(feel_l_index)+86):((mystr.find(feel_l_index)+86)+3)]
    print("Ощущается как: ", feel_l)
feel_like()
 
def weather_online():
    main_site()
    weather_index = '/><div class="link__feelings fact__feelings"><div class="link__condition day-anchor i-bem" data-bem=\'{"day-anchor":{"anchor":'
    weather = (mystr[(mystr.find(weather_index)+131):((mystr.find(weather_index)+131)+30)])
    weather = weather[:(weather.find("<"))]
    print(weather)
weather_online()
Github
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.08.2019, 10:29
Ответы с готовыми решениями:

Выводить текущие данные о погоде с использованием API сайта https://www.weatherbit.io/api. Данные о погоде должны быть в
С помощью Python нужно вывысти текущие данные о погоде с использованием API сайта https://www.weatherbit.io/api Данные о погоде должны быть...

Прошу критику курсов
Я начинающий, образование экономическое. Хочу пойти сюда: http://mti.edu.ru/entrance/retraining/it/dev/javawebdev Стоит?

Получать данные о текущей погоде в Томске в виде XML
Всем привет! Получил задание для новичков, для прохождения стажировки! Расскажите как и с чем его &quot;съесть&quot;. Я не прошу у...

12
102 / 75 / 38
Регистрация: 08.11.2017
Сообщений: 272
16.08.2019, 10:36
FroDK, по сути весь код можно отправить в топку. Названия переменных, работа с global, магические цифры (86, 14,3 wtf??), отсутствие нормального входа в программу, кривая структуризация. Да и посмотрите в сторону API Яндекс погоды.
0
2 / 1 / 1
Регистрация: 16.08.2019
Сообщений: 48
16.08.2019, 10:41  [ТС]
Я же сказал что только начинаю изучать его. Всего неделю занимаюсь. Это простой парсинг исходного кода сайта. Через API Яндекса не получилось, так как яндекс просто не дает зарегистрироваться как разработчик.

Добавлено через 1 минуту
Тоже искал по теме яндекс погоды. Темы все старые и сейчас не работают. Поэтому пришлось делать самому. Если можете сделать намного лучше, то я буду только рад
0
102 / 75 / 38
Регистрация: 08.11.2017
Сообщений: 272
16.08.2019, 10:43
FroDK, какой смысл выкладывать код в 40 строк, после недели обучения?
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
16.08.2019, 10:44
The easiest and easiest Yandex Weather widget
ага, легче легкого... а английский язык учи -пригодится

Цитата Сообщение от FroDK Посмотреть сообщение
Прошу строго не судить
наоборот, лучше с младых ногтей хватануть критики и научиться

на транслите прописнымы буквами. Например Москва = moscow
это не транслит, вот транслит - Moskva

кроме того, что тебе выше описали, мне очень странно видеть код, где мужду функциями робкими вкраплениями идут какие то отдельный строки, вынеси их тогда вниз, не понятно же.
0
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,248
16.08.2019, 10:44
kratorr, в том числе для того, что бы вы высказали свои замечания. Так проще понять, куда двигаться, на что обратить внимание.
0
2 / 1 / 1
Регистрация: 16.08.2019
Сообщений: 48
16.08.2019, 10:47  [ТС]
Просто у меня получилось его сделать и она работает. Поэтому и решил выложить. Думаю, когда-то вы тоже с чего-то начинали и были таким же полным 0

Добавлено через 1 минуту
Английский знаю хорошо, просто не хотел заморачиваться над переводом и тупо перевел в переводчике
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
16.08.2019, 10:47
Цитата Сообщение от FroDK Посмотреть сообщение
когда-то вы тоже с чего-то начинали и были таким же полным 0
да, но не обижались на критику, а задавали вопросы и терпеливо записывали в блокнотик
0
2 / 1 / 1
Регистрация: 16.08.2019
Сообщений: 48
16.08.2019, 10:48  [ТС]
Можете тоже написать такой код, только правильный, чтобы я увидел разницу и посмотрел что стоит изучать и к чему стремиться?
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
16.08.2019, 10:49
например, создай еще один модуль и там импортируй вот этот свой с погодой, увидишь интересную вещь
0
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,248
16.08.2019, 10:49
FroDK, очень вам советую переделать всё то же самое через API, с полным соблюдением PEP8.
0
2 / 1 / 1
Регистрация: 16.08.2019
Сообщений: 48
16.08.2019, 10:53  [ТС]
Хорошо, я попробую через API, спасибо
0
5042 / 1069 / 149
Регистрация: 29.01.2013
Сообщений: 6,248
16.08.2019, 10:56
FroDK, начните с pep8
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.08.2019, 10:56
Помогаю со студенческими работами здесь

Создать таблицу, которая будет содержать данные о погоде
Исправьте ошибки. Нужно создать таблицу, которая будет выводить данные о погоде. Программа работает, но вместо таблицы с введёнными...

Определить тип pogoda, которые сохраняет данные о погоде
Помогите пожалуйста. Нужно сделать через record Определить тип pogoda, которые сохраняет данные о погоде: день недели, температуру,...

Прогноз погоды: получать данные о погоде с какого-нибудь сайта
Возможно ли средствами c++ получать данные о погоде с какого-нибудь сайта и выводить их, например, на консоль?

Имеются описания: Сезон = (зима, весна, лето, осень) Погода = (тепло, холодно) По сезону ответить какова погода Delphi
Имеются описания: Сезон = (зима, весна, лето, осень) Погода = (тепло, холодно) По сезону ответить какова погода Delphi

Добрый день, я сделал бота но пункт о погоде не роботает. Перегляньте код пожалуйста и скажите в чем проблема. А то я не
Добрый день, я сделал бота но пункт о погоде не роботает. Перегляньте код пожалуйста и скажите в чем проблема. А то я не знаю в чем...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru