ホームページ >ウェブフロントエンド >htmlチュートリアル >python+flask+html/css+mysql+BAE は CSDN 履歴書自動生成システムを作成します (完全な Web サイトのソース コードが添付されています)_html/css_WEB-ITnose

python+flask+html/css+mysql+BAE は CSDN 履歴書自動生成システムを作成します (完全な Web サイトのソース コードが添付されています)_html/css_WEB-ITnose

WBOY
WBOYオリジナル
2016-06-24 11:55:201355ブラウズ

1. 背景


私はいつも趣味で Web アプリを書きたいと思っていました。数日前、github で履歴書によって自動的に生成された Web アプリを見つけたので、csdn 履歴書ジェネレーターをコピーし始めました。構造は非常に単純で、フロントエンドは html/css ファイルです (ブロガーはフロントエンドについてあまり知らないため、これは github Web ページを模倣しています)。バックグラウンドは、csdn から個人情報をクロールして表示し、最終的に Baidu Cloud に展開できるクローラー ソフトウェアです。 Baidu のクラウド データベースは本当に詐欺です。長い間デバッグしてきましたが、まだデータを挿入できません。さて、最初に写真を撮りましょう。プロジェクトのアドレスは http://resumecsdn.duapp.com/ です。 (1) 開始ページ レジューム


2. プロジェクト紹介

(1) フロントエンド


メインフロントエンド 他の方のを参考に修正しました。仕事コーディングの経験がある人にとっては簡単なはずです。フロントエンドとバックエンドの間のやり取りは、まず HTML でメソッドを設定し、次に {{{data}} のようにデータを送信することによって行われます。これは、比較的簡単に理解できます。コードなので詳細は説明しません。


(2) flask


Flask は比較的軽量な Python Web フレームワークです。ブロガーは当初 Douban を使用する予定でしたが (Douban のバックエンドは Python で書かれています)、難しすぎることがわかったので切り替えました。フラスコを使用します。フラスコの利点は非常に簡単です。

@app.route('/')def home():   #mysql_manager.sql_connect()       return render_template('index.html')@app.route('/signup', methods=['POST'])def signup():    #session['username'] = request.form['username']    session['message'] = request.form['message']    return redirect(url_for('message'))
このように、app.route を使用して Web ページのパスを直接取得し、インデックス ページを開くことができます。ファイル構造を確認してください。すべての HTML はテンプレート フォルダーに保存され、CSS 設定ファイルとデータベースは静的フォルダーに配置できます。


このフレームワークの利点は、サンプルを見るだけで作業を開始できることです: http://maximebf.com/blog/2012/10/building-websites-in-python- with-flask/


(3) クローラー


バックグラウンドのクローラー ファイルであるクローラー ファイルを紹介します。ブラウザの閲覧を装っているため、一部のアンチクローラー Web サイトを回避するためにヘッドが追加されています。残りは urllib の関数と通常のマッチングを使用することですが、これはより簡単です。

headers = {      'User-Agent':'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6'       }     req = urllib2.Request(      url='http://blog.csdn.net/'+name,      headers = headers      )  

(4) BAE へのデプロイ

BAE について言うと、mysql 関数のドキュメントが非常に少なく、非常に不満です。ただし、他の関数、特に多くの Python をサポートするサードパーティ ライブラリは引き続き利用できます。これらの関数は、requirements.txt で定義できます。

使用法: アカウントを登録すると、Git アドレスが提供され、ローカルにクローンが作成されます。もちろん、変更するたびに「クイック公開」をクリックする必要があります。



ここで注意すべき点がいくつかあります:


1. まず、app.conf、URL にはアスタリスクが付いている必要があります。 2. 次に、必要なサードパーティ ライブラリをrequirements.txtに追加します。これにより、baeが自動的にそれらをインストールします。


handlers:  - url : /.*    script: __init__.py


3. ローカル デバッグと BAE への配置の違いに注意してください


ローカル デバッグで実行されているプログラムは、__init__.py ファイル内の次のステートメントであり、次のステートメントで表示できます。ブラウザ

flaskMySQL-python


BAE に置くときは、ローカル デバッグ ステートメントをコメント アウトし、__init__.py に追加します。
if __name__ == '__main__':     app.run()



4. 各ローカル デバッグの後にスレッドを強制終了することに注意してください。はシェル内にあります:

from bae.core.wsgi import WSGIApplication  application = WSGIApplication(app)  

次に、対応する ID 番号を kill します



----------------------------------------------- -------------------------------------------------- -------------------------------------------------- ---

多ければほぼ十分です。さらに詳しく知りたい場合は、プロジェクトにアクセスして、GitHub アドレス プロジェクトのデモ アドレスを参照してください。

困ったときは、Star100+ プロジェクトを所有してください。

/*********************************

* 転載の際は出典を明記してください: http://blog.csdn.net/ buptgshengod

********************************************/



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。