希望用flask作为中介让python和js交互,大家有什么比较好的实践经验没?
我试过了getjson之类的是可以的但是比较怀疑数据量大的话用什么比较好啊?记得见过有人是pandas+d3.js+flask用的,不过找不到了
回复内容:
无邀自答,只因为在我主页的信息流里面多看了你一眼。。。。这话题选得各种切中我的要害啊。
我是勤劳的搬运工。
Getting Your Python Data Onto Browser介绍了如何将你的python数据弄到浏览器里面。所以其实JSON才是python和js的中介,Flask框架只是帮你简单的建立一个JSON服务器而已,连RESTfull都谈不上,如果你只是用来可视化的话。当然你也可以实现增修改删的RESTful服务。同理,你也可以用Tornado,也许它的性能更好。
我假定是一个动态的服务,那么Panda的DataFrame可以帮你快速地处理数据,Playing with REALTIME data, Python and D3和Data visualization using D3.js and Flask都有介绍相关的细节。
功能实现后,你所关心的可能是性能问题。我觉得大多数还不太会需要这方面的担忧。最烦人的可能是开发和可维护性。当然如果关心性能,你也可以在你功能完善的情况下,考虑服务器的优化,引入cache服务,服务器平衡等等,我觉得这不是你关心的。
此外,强烈推荐数据可视化控,可以试试ipython notebook. 这篇Visualizing a NetworkX graph in the IPython notebook with d3.js可能会让你强烈地喜欢上ipython notebook.
新手的个人经验:比如现在我们要将一个数据从Javascript传输到Flask, 进行处理后再传回Javascript. 我们可以使用jQuery中的getJSON, 并将数据转化为String后进行传输.
Javascript + jQuery:
<span class="nx">mydata</span> <span class="o">=</span> <span class="p">{</span><span class="s2">"msg"</span><span class="p">,</span> <span class="s2">"Hello Flask."</span><span class="p">};</span> <span class="c1">// 要传输的数据</span> <span class="nx">$</span><span class="p">.</span><span class="nx">getJSON</span><span class="p">(</span><span class="s1">'/dataconvector'</span><span class="p">,</span> <span class="p">{</span> <span class="c1">// Flask中获取数据的function的url</span> <span class="nx">mykey</span><span class="o">:</span> <span class="nx">JSON</span><span class="p">.</span><span class="nx">stringify</span><span class="p">(</span><span class="nx">mydata</span><span class="p">)</span> <span class="c1">// 定义一个keyword, 将数据stringify</span> <span class="p">},</span> <span class="kd">function</span><span class="p">(</span><span class="nx">data</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// 从Flask返回的数据</span> <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">data</span><span class="p">.</span><span class="nx">result</span><span class="p">);</span> <span class="nx">$</span><span class="p">(</span> <span class="s2">"#result"</span> <span class="p">).</span><span class="nx">text</span><span class="p">(</span><span class="nx">data</span><span class="p">.</span><span class="nx">result</span><span class="p">);</span> <span class="p">}</span> <span class="p">);</span>
另外推荐神器 GitHub - brython-dev/brython: Brython (Browser Python) is an implementation of Python 3 running in the browser
bottle-websocket flask-socketio, 相当简单易用
https://flask-socketio.readthedocs.org/en/latest/ 入门上手的话推荐看这本:
Data Visualization with Python and JavaScript - O'Reilly Media 推荐一个Github上面的开源项目,Caravel(GitHub - airbnb/caravel: Caravel is a data exploration platform designed to be visual, intuitive, and interactive),我正在学习和研究它 在flask这个包里有jsonify这个方法,可以return这个方法的返回值,在js那边接受为json。
除此之外,还可以使用jinja过滤器,在html上将字典转化为js可以读取的格式。字符串就不必了。
参考我的博客
http://www.cnblogs.com/lewis617/p/5184621.html 用Flask搭建一个RESTful服务,以JSON作为数据接口,这样前台就能获取后台的数据。 tornado + websocket 也是一个选择,格式 json 比较方便。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Pandas インストール チュートリアル: 一般的なインストール エラーとその解決策の分析、特定のコード サンプルが必要です はじめに: Pandas は、データ クリーニング、データ処理、およびデータ視覚化で広く使用されている強力なデータ分析ツールであるため、この分野で高く評価されていますデータサイエンスのただし、環境構成と依存関係の問題により、パンダのインストール時に問題やエラーが発生する可能性があります。この記事では、パンダのインストール チュートリアルを提供し、いくつかの一般的なインストール エラーとその解決策を分析します。 1.パンダをインストールする

pandas を使用して txt ファイルを正しく読み取る方法には、特定のコード サンプルが必要です。パンダは、広く使用されている Python データ分析ライブラリです。CSV ファイル、Excel ファイル、SQL データベースなど、さまざまな種類のデータの処理に使用できます。同時に、txt ファイルなどのテキスト ファイルを読み取るために使用することもできます。ただし、txt ファイルを読み取るときに、エンコードの問題や区切り文字の問題など、いくつかの問題が発生することがあります。この記事ではパンダを使ってtxtを正しく読む方法を紹介します。

Django と Flask はどちらも Python Web フレームワークのリーダーであり、それぞれに独自の利点と適用可能なシナリオがあります。この記事では、これら 2 つのフレームワークを比較分析し、具体的なコード例を示します。開発の概要 Django はフル機能の Web フレームワークであり、その主な目的は、複雑な Web アプリケーションを迅速に開発することです。 Django は、ORM (オブジェクト リレーショナル マッピング)、フォーム、認証、管理バックエンドなどの多くの組み込み機能を提供します。これらの機能により、Django は大規模なデータを処理できるようになります。

ゼロから始めて、Flask をインストールし、個人ブログをすぐに構築する方法を段階的に説明します。書くことが好きな人にとって、個人ブログを持つことは非常に重要です。軽量の Python Web フレームワークである Flask は、シンプルで完全に機能する個人ブログを迅速に構築するのに役立ちます。この記事では、ゼロから始めて、Flask をインストールして個人ブログを迅速に構築する方法を段階的に説明します。ステップ 1: Python と pip をインストールする 開始する前に、まず Python と pi をインストールする必要があります

顔の検出および認識テクノロジーは、すでに比較的成熟しており、広く使用されているテクノロジーです。現在、最も広く使用されているインターネット アプリケーション言語は JS ですが、Web フロントエンドでの顔検出と認識の実装には、バックエンドの顔認識と比較して利点と欠点があります。利点としては、ネットワーク インタラクションの削減とリアルタイム認識により、ユーザーの待ち時間が大幅に短縮され、ユーザー エクスペリエンスが向上することが挙げられます。欠点としては、モデル サイズによって制限されるため、精度も制限されることが挙げられます。 js を使用して Web 上に顔検出を実装するにはどうすればよいですか? Web 上で顔認識を実装するには、JavaScript、HTML、CSS、WebRTC など、関連するプログラミング言語とテクノロジに精通している必要があります。同時に、関連するコンピューター ビジョンと人工知能テクノロジーを習得する必要もあります。 Web 側の設計により、次の点に注意してください。

Flask フレームワークのインストール チュートリアル: Flask フレームワークを正しくインストールする方法を段階的に説明します。特定のコード例が必要です。 はじめに: Flask は、シンプルで柔軟な Python Web 開発フレームワークです。学びやすく、使いやすく、強力な機能が満載です。この記事では、Flask フレームワークを正しくインストールする方法を段階的に説明し、参照用の詳細なコード例を提供します。ステップ 1: Python をインストールする Flask フレームワークをインストールする前に、まず Python がコンピュータにインストールされていることを確認する必要があります。 Pから始められます

pandas を使用して txt ファイルを読み取るための実践的なヒント、具体的なコード例が必要です データ分析とデータ処理では、txt ファイルは一般的なデータ形式です。 pandas を使用して txt ファイルを読み取ると、高速で便利なデータ処理が可能になります。この記事では、パンダをより効果的に使用して txt ファイルを読み取るのに役立ついくつかの実践的なテクニックを、具体的なコード例とともに紹介します。区切り文字付きの txt ファイルの読み取りパンダを使用して区切り文字付きの txt ファイルを読み取る場合は、read_c を使用できます。

Pandas 重複排除メソッドの秘密: データを重複排除するための高速かつ効率的な方法 (特定のコード例が必要) データの分析と処理のプロセスでは、データの重複が頻繁に発生します。データが重複すると分析結果が誤解される可能性があるため、重複排除は非常に重要な手順です。強力なデータ処理ライブラリである Pandas では、データ重複排除を実現するためのさまざまな方法が提供されています。この記事では、一般的に使用されるいくつかの重複排除方法を紹介し、具体的なコード例を添付します。単一列に基づく重複排除の最も一般的なケースは、特定の列の値が重複しているかどうかに基づいています。
