如何在没有web服务器的情况下将变量数据从Python传输到Javascript?

如何在没有web服务器的情况下将变量数据从Python传输到Javascript?,javascript,python,html,file,Javascript,Python,Html,File,我正在努力自动生成一个本地HTML文件,我需要的所有相关数据都在Python脚本中。如果没有web服务器,我不知道如何继续,因为否则我认为AJAX/json解决方案是可能的 基本上在python中,我有一些列表和字典对象,我需要使用它们来使用javascript和HTML创建图形。我有一个解决方案(非常糟糕),就是使用字符串从Python中直接编写HTML/JS,然后保存到文件中 我还能在这里做什么?我很确定Javascript没有文件I/O功能 谢谢。你觉得使用一些系统怎么样?它会满足你的需要

我正在努力自动生成一个本地HTML文件,我需要的所有相关数据都在Python脚本中。如果没有web服务器,我不知道如何继续,因为否则我认为AJAX/json解决方案是可能的

基本上在python中,我有一些列表和字典对象,我需要使用它们来使用javascript和HTML创建图形。我有一个解决方案(非常糟糕),就是使用字符串从Python中直接编写HTML/JS,然后保存到文件中

我还能在这里做什么?我很确定Javascript没有文件I/O功能


谢谢。

你觉得使用一些系统怎么样?它会满足你的需要。

你觉得使用一些系统怎么样?它将满足您的需要。

我知道您特别提到了“没有web服务器”,但除非您真的想另辟蹊径,使其过于复杂,并限制未来使用的灵活性:-


您能否不使用非常简单的Web服务器,例如:?这样,如果你需要公开网站,你已经有了URL,可以设置一个合适的web服务器。

我知道你特别提到了“没有web服务器”,但除非你真的想另辟蹊径,将其复杂化,并限制将来使用的灵活性:-


您能否不使用非常简单的Web服务器,例如:?这样,如果你需要公开网站,你已经有了URL,可以设置一个合适的Web服务器。

也许你可以写一个cookie,然后通过JavaScript访问它?和这个答案类似吗?

也许你可以写一个cookie,然后通过JavaScript访问它?与此类似,您可以使用Python的JSON编码器和解码器库。通过这种方式,您可以将Python数据编码为JSON格式,并将其包含在HTML文档中。然后在HTML文件中使用Javascript处理JSON编码的数据


您可以使用Python的JSON编码器和解码器库。通过这种方式,您可以将Python数据编码为JSON格式,并将其包含在HTML文档中。然后在HTML文件中使用Javascript处理JSON编码的数据


您只需要将python代码中的数据转换为javascript可读的格式,对吗


为什么不直接获取数据结构,将其转换为JSON,然后编写一个
.js
文件,该文件包含
.html
文件,即
var data={JSON:“object here”}

您只需要将python代码中的数据转换为javascript可读的格式,对吗


为什么不直接获取数据结构,将其转换为JSON,然后编写一个
.js
文件,该文件包含
.html
文件,即
var data={JSON:“object here”}

如果这只需要用于localhost,您可以执行以下操作。 要访问,您需要拨打
http://localhost:8080/foo
;但是,由于跨站点注入保护,这可能会导致一些问题;通过谷歌搜索,这些问题很容易解决

在JS方面,您可以进行如下AJAX调用(假设使用jQuery)

然后在Python端,您将把这个文件放在与您要在计算机上使用的html文件(index.html)相同的目录中,并执行它

import BaseHTTPServer
import json

class WebRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
        def do_GET(self):
            desiredDict = {'something':'sent to JS'}
            if self.path == '/foo':
                self.send_response(200)
                self.send_header("Content-type", "application/json")
                self.end_headers()
                self.wfile.write(json.dumps(desiredDict))
            else: 
                if self.path == '/index.html' or self.path == '/':
                    htmlFile = open('index.html', 'rb')
                    self.send_response(200)
                    self.send_header("Content-type", "text/html")
                    self.send_header("Access-Control-Allow-Origin","http://localhost:8080/")
                    self.end_headers()
                    self.wfile.write(htmlFile.read())
                else:
                    self.send_error(404)

server = BaseHTTPServer.HTTPServer(('',8080), WebRequestHandler)
server.serve_forever()

如果这只需要用于localhost,您可以执行以下操作。 要访问,您需要拨打
http://localhost:8080/foo
;但是,由于跨站点注入保护,这可能会导致一些问题;通过谷歌搜索,这些问题很容易解决

在JS方面,您可以进行如下AJAX调用(假设使用jQuery)

然后在Python端,您将把这个文件放在与您要在计算机上使用的html文件(index.html)相同的目录中,并执行它

import BaseHTTPServer
import json

class WebRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
        def do_GET(self):
            desiredDict = {'something':'sent to JS'}
            if self.path == '/foo':
                self.send_response(200)
                self.send_header("Content-type", "application/json")
                self.end_headers()
                self.wfile.write(json.dumps(desiredDict))
            else: 
                if self.path == '/index.html' or self.path == '/':
                    htmlFile = open('index.html', 'rb')
                    self.send_response(200)
                    self.send_header("Content-type", "text/html")
                    self.send_header("Access-Control-Allow-Origin","http://localhost:8080/")
                    self.end_headers()
                    self.wfile.write(htmlFile.read())
                else:
                    self.send_error(404)

server = BaseHTTPServer.HTTPServer(('',8080), WebRequestHandler)
server.serve_forever()

是的,JSON被设计成由JavaScript本机解析,正确的格式也是如此,Python内置了一个JSON库来编写JSON用Python编写并输出到.js文件,以便我的HTML包含?抱歉,我只是有点困惑是的,你完全掌握了,使用上面文本中提到的JSON编码器库@yorkrj。一个简单的字符串连接,然后写入文件。确保HTML文件在实际的Javascript代码文件之前包含此文件,否则从它的角度来看,
data
变量将不存在以进行操作。是的,JSON被设计为通过Javascript进行本地解析,正确的格式也是如此,Python内置了一个JSON库来编写它。行
var data={JSON:“object here”};
用Python编写并输出到.js文件以供我的HTML包含?抱歉,我只是有点困惑是的,你完全掌握了,使用
{JSON:“object here”}中提到的JSON编码器库@yorkrj
在上面的文本中。一个简单的字符串连接,然后写入文件。确保HTML文件在实际Javascript代码文件之前包含此文件,否则从它的角度来看,
数据
变量将不存在,无法操作。