@axmedsaid
только начал программирование

Не получается связать python c html c помощью javascript async function как это сделать можно ли по другому?

тут мой код на python
import eel
import pyowm
owm=pyowm.OWM("11c0bcbf5628a90aa946468e636fb932")
@eel.expose
def get_weather():
	mgr=owm.weather_manager()
	observation=mgr.weather_at_place(city)
	w=observation.weather
	temp=w.temperature('celsius')['temp']
	return "в городе "+ city + " сейчас "+ str(temp) + " градусов "

тут мой код на html и скрипт на java который должен был связать его с python
<!DOCTYPE html>
	<html>
	<head>
		<meta charset="utf-8">
		<title>Погода </title>
		<script src="eel.js"></script>
		<link rel="icon" type="image/png" href="/favicon.png">
		<link rel="stylesheet" type="text/css" href="main.css">
	</head>
<body>
	<input id="location" type="text" placeholder="Введите название страны и города"  required="" value="london">

	<button id="show">Узнать погоду</button>

	<div id="info"></div>

	<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
	<script type="text/javascript">
		
		async function display_weather(){
			let place=document.getElementById('location').value;
			let res=await eel.get_weather(place);
			document.getElementById('info').innerHTML=res;
		}
		jQuery('#show').on('click', function(){display_weather();});
	</script>
</body>
</html>

суть кода: он должен был показать погоду в выбранном вами городе при нажатий кнопки сам python(на терминале ) на и сам html без друг друга работают но не смог их связать. Когда запускаю с терминала код на python ничего не происходит но ошибок не выдает
5f44c97059f82463189574.png
я не так давно начал изучать программирование и начал с html и css сверстал 1-2 сайта и после хотел скрипты написать на других языках выбрал python и с начало видосы начал смотреть и вот это видео захотелось повторить https://www.youtube.com/watch?v=Gon0MvppfF8&t=85s и вроде повторял все его действий но не смог связать html с python помогите пожалуйста
  • Вопрос задан
  • 604 просмотра
Решения вопроса 1
SoreMix
@SoreMix Куратор тега Python
yellow
1. Вы переписали код на стороне Python неправильно. Передайте параметр city в get_weather
2. Советую закрыть канал хауди хо, его уроки высмеюваются, по-моему, всеми, в разбирающемся комьюнити. Ну и так же нужно добавить в конец кода. Этот момент почему-то не показан в видео, после оборачивания в функцию
eel.init('web')
eel.start('main.html')
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@yamurlo
В питон файле нужны эти строки

eel.init("web")
eel.start('main.html', size = (700, 700))

Просто здесь опечатка и всего.

def get_weather():
mgr=owm.weather_manager()
observation=mgr.weather_at_place(city)
w=observation.weather
temp=w.temperature('celsius')['temp']
return "в городе "+ city + " сейчас "+ str(temp) + " градусов "

Не mgr, а mrg. Буквы перепутали, потому не выдавало погоду.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы