PyMaps: Как взаимодействовать с JavaScript у питона

Хорошо, таким образом, я использовал это закодируйте к установке простую программу. В основном это просто устанавливает пункты на карте у питона. Очень простой. Проблема теперь, у меня есть условие, где, когда то условие происходит, это обновляет страницу с простым QWebView.setHtml() . Что я хочу сделать, теперь находка способ получить текущее увеличение масштаба изображения и информацию о центре карты и спасти его. Там должен так или иначе войти в JavaScript и захватить ту информацию, сохранить его и затем написать его в HTML тем же самым путем, этот код уже делает, прежде чем я сделаю освежительный напиток?

Жаль, если это запутывающее или широкое, я просто, косяк думает о способе получить информацию из карты, используя питона.

1
nl ja de

1 ответы

Есть много способов взаимодействовать с клиентским кодом от сервера (Питон). Вы могли установить печенье на клиенте, отправить запрос AJAX к серверу из JavaScript, представить форму или пойти более экзотический маршрут как WebSockets. Без большей информации я не уверен, что мы можем сказать вам, который является лучшим.

Какую веб-структуру вы используете?

Править:

О, я вижу - вы используете scriptable веб-представление..., возможно, что-то как изменяет масштаб изображения = view.evaluateJavaScript ('map.getZoom ()';) ? Из того, что я вижу библиотеки, трудная часть могла бы получать ссылку на вар карты в JS.

Править:

Я не думаю, что это возможно, не изменяя или простираясь pymaps, так как это рассматривает GMap в местном масштабе в JS и не выставляет его нигде. Я сделал просто это в a суть. Можно тогда получить доступ к увеличению масштаба изображения с чем-то подобным вышеупомянутому - возможно увеличение масштаба изображения = view.evaluateJavaScript ("PyMaps[0].gmap.getZoom ()";) .

Править:

В случае, если это не было ясно - суть, я включал, требует, чтобы вы использовали MyPyMap вместо PyMap .

От другого Вопрос о StackOverflow, Я понял, что вы не можете сделать evaluteJavaScript прямо согласно представлению. Последующий код больше походил бы на это

doc = view.page().mainFrame().documentElement()
zoom_level = doc.evaluateJavaScript("PyMaps[0].gmap.getZoom();")
1
добавлено
Это не веб-приложение. Это - настольное приложение питона. Я только использую QWebView, чтобы показать карты Google, потому что они только поддерживают JavaScript, и это - единственный способ, которым я знаю, как показать веб-страницу в окне питона.
добавлено автор LiverpoolFTW, источник
Святая корова. Это работало отлично. Только вещь - немного опечатки в ответе. evaluateJavascript должен быть evaluateJavaScript. Большое спасибо за вас помогает.
добавлено автор LiverpoolFTW, источник
Жаль об этом! просто пойманный это.
добавлено автор Matt Luongo, источник
@LiverpoolFTW сообщают мне, длится ли это, редактируют, помогает!
добавлено автор Matt Luongo, источник
Python
Python
7 654 участник(ов)

Уютный чат для профессионалов, занимающихся поиском питоньих мудростей. Как не получить бан: https://t.me/ru_python/577926

Python beginners
Python beginners
4 449 участник(ов)

Вопросы про Python для чайников. Cпам и троллинг неприемлем. Не злоупотребляйте стикерами. Частозадаваемые вопросы: https://github.com/ru-python-beginners/faq/blob/master/README.md Статистика тут: https://grstats.me/chat/x4qym2k5uvfkr3al6at7

pro.python
pro.python
1 090 участник(ов)

Сообщество разработчиков под Python Создатель: @rodgelius

Rude Python
Rude Python
971 участник(ов)

Python без „девочек”, здесь матерятся и унижают Django. Not gay friendly. Правила: t.me/rudepython/114107 @rudepython | t.me/rudepython

rupython
rupython
509 участник(ов)

Группа создана с целью оперативного получения ответов на возникающие вопросы по разработке на яп python, смежные темы, а также человеческого общения. Приветствую!

Python-programming
Python-programming
266 участник(ов)

Чат группы вконтакте https://vk.com/python_community