當前位置:首頁 » 編程語言 » jinjiapython

jinjiapython

發布時間: 2022-09-21 02:45:36

⑴ 如何找到安裝python-jinja2等包

編輯環境:
[root@openstack-01 rhel7.x]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
openstack版本:Mitaka
python-zope-interface
python-jinja2
python-cheetah
python-cheetah
python-webtest
python-werkzeug
其中安裝python-jinja2的時候出現不兼容的問題:
[root@openstack-01 rhel7.x]# yum install python-jinja2-2.7.2
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* c7-media:
Resolving Dependencies
--> Running transaction check
---> Package python-jinja2.noarch 0:2.7.2-1.el6 will be installed
--> Processing Dependency: python(abi) = 2.6 for package: python-jinja2-2.7.2-1.el6.noarch
--> Finished Dependency Resolution
Error: Package: python-jinja2-2.7.2-1.el6.noarch (RHEL-Repository)
Requires: python(abi) = 2.6
Installed: python-2.7.5-34.el7.x86_64 (@anaconda)
python(abi) = 2.7
python(abi) = 2.7
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
[root@openstack-01 yum]# yum install python-2.6.6
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* c7-media:
Package matching python-2.6.6-51.el6.x86_64 already installed. Checking for update.
Nothing to do
,具體解決方案如下:
解決方案1:
我想這個問題主要是如何解決python-2.7.5-34.el7.x86_64和python-2.6.6-51.el6.x86_64的問題。
CentOS Linux release 7.2.1511自帶的是python-2.7.5-34.el7.x86_64。
下面的包都要2.6
python-zope-interface
python-jinja2
python-cheetah
python-cheetah
python-webtest
python-werkzeug
解決方案2:
官網上也有這個問題,可是沒有人回答。
https://ask.openstack.org/zh/question/91784/zai-centos7zhong-an-zhuang-havanati-shi-pythonban-ben-bu--chi/

⑵ Python 有哪些好的 Web 框架

1. Django。是一個全能型框架。目前 Django 的使用面還是很廣的,有學習的價值,但是不建議初學者學習,因為要學習的東西太多了,一下子難以吸收會失去興趣。

2. Tornado。傳說中性能高高的框架。Tornado 是一個很好的框架,支持非同步處理的功能,這是它的特點,其他框架不支持。
3.flask。一個微型web框架,使用相當靈活,在github開源,微型不代表功能缺失,相反他的功能很強大,結合jinjia2模版
4.Web.py。一個輕量級的開源Python Web框架,小巧靈活、簡單並且非常強大,在使用時沒有任何限制。目前Web.py被廣泛運用在許多大型網站,如西班牙的社交網站Frinki、主頁日平均訪問量達7000萬次的Yandex等。

⑶ 如何把Python入門

階段一:基礎階段
Python語言基礎
· 環境搭建與裝備· 變數和數據類型· 編程根底· 裝修器· gui介紹
簡易爬蟲實戰
· http和urllib2· 正則表達式和re· 編寫爬蟲代碼· 多線程
工具階段
· Pip安裝辦法以及環境· Pip根底運用和指定源· Virtualenv安裝· Pycharm&pdb調試技巧
Python面向目標
· 面向目標入門及特徵· 類辦法運用及特徵· 訪問束縛· super和self目標· 嵌套類和嵌套函數
web前端根底
· HTML+CSS· Javascript· Jquery
萬丈高樓平地起,再牛逼的大神也需求打好根底,Python語言根底、面向目標編程、開發工具及前端根底等知識點。
階段二:爬蟲階段
爬蟲根底
· 簡略爬蟲實例· 辦法抓取· 正則表達式的根本運用· 模仿登陸· cookie操作· requsts
Git根本運用
· 基於github文檔裝備· pull requst· 常用命令· remote和clone· big分支· feature分支
Scrapy結構
· Scrapy初步簡介· Scrapy常用命令· 爬蟲中心· 圖片抓取· cookie處理
MYsql資料庫
· sql標准和創建· 主外鍵束縛· 數據關聯處理· 運算符· 常用函數
從爬蟲根底,到各大爬蟲結構的應用,能熟練掌握常用的爬蟲技巧並能獨立開發商業爬蟲
階段三:Web階段
flask入門
· flask上下文呼應· flask路由· flask模板· flask入門資料庫操作· Jinja2根本語法· flask入門布置
Django根底
· 創建網站· sqlite3資料庫簡介· 資料庫根本操作· admin運用
Ajax初步
· Ajax簡介/運轉環境· eval&dom· 數據封裝· ajax注冊用戶
Django進階
· jinjia2替換模板引擎· admin高檔定製· admin actions· 集成已有的資料庫· 通用視圖
實戰:個人博客系統
· 項目分析· Web開發流程介紹· 資料庫設計· 自定義Manger管理· 項目布置上線
flask,django等常用的python web開發結構,以及ajax等交互技術,經過學習能夠將爬取的數據以網頁或者介面的形式來呈現給用戶
階段四:項目階段
· 開發前預備· 需求和功用解說· 代碼結構· 注意事項
版本控制管理軟體
· 常用版本控制和原理· Svn常用實操· Svn高檔· 四大開源站點· Git詳解· Git對比Svn
Diango緩存優化
· Filesystem緩存解析· Database緩存解析· 緩存裝備與運用· 自定義緩存· Redis緩存· Django緩存優化性能評估
網站發布
· 介紹Diango和它的基· 布置前預備· 主流布置方法介紹· Diango多伺服器分離· 腳本自動化· Diango的伺服器安全
豐厚的項目經驗是找工作的必要條件

⑷ 如何在 virtualenv 環境下搭建 Python Web

安裝組件庫

第一步安裝所需要的存儲庫,因為打算用到虛擬環境,用到 pip 安裝和管理 Python 組件,所以先更新本地包,然後安裝組件:
sudo apt-get update
sudo apt-get install python-pip python-dev nginx

創建虛擬環境 virtualenv

在一個系統中創建不同的 Python 隔離環境,相互之間還不會影響,為了使系統保持干凈,遂決定用 virtualenv 跑應用程序,創建一個容易識別的目錄,開始安裝,再創建項目目錄 super,然後激活環境:
sudo pip install virtualenv
mkdir ~/supervisor && cd ~/supervisor
virtualenv super
source super/bin/activate

安裝 Flask 框架

好了,現在在虛擬環境裡面,開始安裝 Flask 框架,flask 依賴兩個庫 werkzeug 和 jinjia2, 採用 pip 方式安裝即可, pip 是一個重要的工具,Python 用它來管理包:
pip install flask

先用 Flask 寫一個簡單的 Web 服務 myweb.py ,因為後面要做一些測試,所以設置了幾個請求:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return 'hello world supervisor gunicorn '
@app.route('/1')
def index1():
return 'hello world supervisor gunicorn ffffff'
@app.route('/qw/1')
def indexqw():
return 'hello world supervisor gunicorn fdfdfbdfbfb '
if __name__ == '__main__':
app.debug = True
app.run()

啟動 Flask 看看!
python myweb.py

在瀏覽器中訪問 http://127.0.0.1:5000 就可以看到了「幾個路徑都試一試」

用 Gunicorn 部署 Python Web

現在我們使用 Flask 自帶的伺服器,完成了 Web 服務的啟動。生產環境下,Flask 自帶的伺服器,無法滿足性能要求。所以我們這里採用 Gunicorn 做 wsgi 容器,用來部署 Python,首先還是安裝 Gunicorn:
pip install gunicorn

當我們安裝好 Gunicorn 之後,需要用 Gunicorn 啟動 Flask,Flask 用自帶的伺服器啟動時,Flask 裡面的
name 裡面的代碼啟動了 app.run()。而這里我們使用 Gunicorn,myweb.py 就等同於一個庫文件,被 Gunicorn
調用,這樣啟動:
gunicorn -w 4 -b 0.0.0.0:8000 myweb:app

其中 myweb 就是指 myweb.py,app 就是那個 wsgifunc 的名字,這樣運行監聽 8000 埠,原先的 5000 埠並沒有啟用,-w 表示開啟多少個 worker,-b 表示 Gunicorn 開發的訪問地址。

想要結束 Gunicorn 只需執行 pkill Gunicorn,但有時候還要 ps 找到 pid 進程號才能
kill。可是這對於一個開發來說,太過於繁瑣,因此出現了另外一個神器
---supervisor,一個專門用來管理進程的工具,還可以管理系統的工具進程。

安裝 Supervisor
pip install supervisor
echo_supervisord_conf > supervisor.conf # 生成 supervisor 默認配置文件
gedit supervisor.conf # 修改 supervisor 配置文件,添加 gunicorn 進程管理

在 supervisor.conf 底部下添加 myweb.py 的配置 `/home/wang/supervisor/super` 是我的項目目錄」

[program:myweb]
command=/home/wang/supervisor/super/bin/gunicorn -w 4 -b 0.0.0.0:8000 myweb:app
directory=/home/wang/supervisor
startsecs=0
stopwaitsecs=0
autostart=false
autorestart=false
user=wang
stdout_logfile=/home/wang/supervisor/log/gunicorn.log
stderr_logfile=/home/wang/supervisor/log/gunicorn.err

supervisor 的基本使用命令:
supervisord -c supervisor.conf
supervisorctl -c supervisor.conf status 查看supervisor的狀態
supervisorctl -c supervisor.conf reload 重新載入 配置文件
supervisorctl -c supervisor.conf start [all]|[appname] 啟動指定/所有 supervisor 管理的程序進程
supervisorctl -c supervisor.conf stop [all]|[appname] 關閉指定/所有 supervisor 管理的程序進程

supervisor 還有一個 web 的管理界面,可以激活。更改下配置:
[inet_http_server] ; inet (TCP) server disabled by default
port=127.0.0.1:9001 ; (ip_address:port specifier, *:port for alliface)
username=wang ; (default is no username (open server)
password=123 ; (default is no password (open server))

[supervisorctl]
serverurl=unix:///tmp/supervisor.sock ; use a unix:// URL for a unix socket
serverurl=http://127.0.0.1:9001 ; use an http:// url to specify an inet socket
username=wang ; should be same as http_username if set
password=123 ; should be same as http_password if set
;prompt=mysupervisor ; cmd line prompt (default "supervisor")
;history_file=~/.sc_history ; use readline history if available

現在可以使用 supervsior 啟動 gunicorn 啦。運行命令:
supervisord -c supervisor.conf

瀏覽器訪問 http://127.0.0.1:9001 可以得到 supervisor 的 web 管理界面,訪問 http://127.0.0.1:8000 可以看見 gunicorn 啟動的返回的頁面。

配置 Nginx

前面我們已經在系統環境下安裝了 Nginx, 安裝好的 Nginx 二進制文件放在 /usr/sbin/ 文件夾下,接下來使用
Supervisor 來管理 Nginx。這里需要注意一個問題,許可權問題。Nginx 是 sudo 的方式安裝,啟動的適合也是 root
用戶,那麼我們現在也需要用 root 用戶啟動 supervisor。在 supervisor.conf 下添加配置文件:
[program:nginx]
command=/usr/sbin/nginx
startsecs=0
stopwaitsecs=0
autostart=false
autorestart=false
stdout_logfile=/home/wang/supervisor/log/nginx.log
stderr_logfile=/home/wang/supervisor/log/nginx.err

好了,都配置完之後,啟動 supervisor:
supervisord -c supervisor.conf

訪問頁面,也可以用 ab 進行壓力測試:
ab -c 100 -n 100 http://127.0.0.1:8000/qw/1

-c 用於指定壓力測試的並發數, -n 用於指定壓力測試總共的執行次數。

安裝 Python 探針

搭建好了 web,想實時監控應用數據,有什麼好的工具,用 OneAPM 的 Python 探針試試,
首先也是安裝 Python 探針:
pip install -i http://pypi.oneapm.com/simple --upgrade blueware

根據 License Key 生成配置文件:
blueware-admin generate-config (License Key) = blueware.ini

由於是在虛擬環境下,所以要特別注意路徑,修改 supervisor.conf 裡面兩項:
[program:myapp]
command = /home/wang/supervisor/super/bin/blueware-admin run-program /home/wang/supervisor/super/bin/gunicorn -w 4 -b 0.0.0.0:8000 myapp:app
environment = BLUEWARE_CONFIG_FILE=blueware.ini

重啟應用
supervisorctl # 進入命令行
supervisor> reload # 重新載入

向上面一樣訪問頁面,也可以用 ab 進行壓力測試
幾分鍾後有下圖,可以看到頁面載入時間,web 事物,頁面吞吐量,其中後面是設置自定義事物「Business Transaction」。

⑸ 如何在 virtualenv 環境下搭建 Python Web

由於字數的限制,其實本篇文章的全標題為 《如何在 virtualenv 環境下 Django + Nginx + Gunicorn+ Supervisor 搭建 Python Web》
在這篇文章里,我們將搭建一個簡單的 Web 應用,在虛擬環境中基於 Flask 框架,用 Gunicorn 做 wsgi 容器,用 Supervisor 管理進程,然後使用 OneAPM Python 探針來監測應用性能,形成一個「閉環」 !希望能對大家有所幫助,首先簡單來介紹一下環境:
系統環境:ubuntu 14.04 Python 2.7.6
安裝組件庫
第一步安裝所需要的存儲庫,因為打算用到虛擬環境,用到 pip 安裝和管理 Python 組件,所以先更新本地包,然後安裝組件:
sudo apt-get updatesudo apt-get install python-pip python-dev nginx

創建虛擬環境 virtualenv
在一個系統中創建不同的 Python 隔離環境,相互之間還不會影響,為了使系統保持干凈,遂決定用 virtualenv 跑應用程序,創建一個容易識別的目錄,開始安裝,再創建項目目錄 super,然後激活環境:
sudo pip install virtualenv
mkdir ~/supervisor && cd ~/supervisor
virtualenv supersource super/bin/activate

安裝 Flask 框架
好了,現在在虛擬環境裡面,開始安裝 Flask 框架,flask 依賴兩個庫 werkzeug 和 jinjia2, 採用 pip 方式安裝即可, pip 是一個重要的工具,Python 用它來管理包:
pip install flask

先用 Flask 寫一個簡單的 Web 服務 myweb.py ,因為後面要做一些測試,所以設置了幾個請求:
from flask import Flask
app = Flask(__name__)
@app.route('/')def index(): return 'hello world supervisor gunicorn '@app.route('/1')def index1(): return 'hello world supervisor gunicorn ffffff'@app.route('/qw/1')def indexqw(): return 'hello world supervisor gunicorn fdfdfbdfbfb 'if __name__ == '__main__':
app.debug = True
app.run()

啟動 Flask 看看!
python myweb.py

在瀏覽器中訪問 http://127.0.0.1:5000 就可以看到了「幾個路徑都試一試」
用 Gunicorn 部署 Python Web
現在我們使用 Flask 自帶的伺服器,完成了 Web 服務的啟動。生產環境下,Flask 自帶的伺服器,無法滿足性能要求。所以我們這里採用 Gunicorn 做 wsgi 容器,用來部署 Python,首先還是安裝 Gunicorn:
pip install gunicorn

當我們安裝好 Gunicorn 之後,需要用 Gunicorn 啟動 Flask,Flask 用自帶的伺服器啟動時,Flask 裡面的 name 裡面的代碼啟動了 app.run()。而這里我們使用 Gunicorn,myweb.py 就等同於一個庫文件,被 Gunicorn 調用,這樣啟動:
gunicorn -w 4 -b 0.0.0.0:8000 myweb:app

其中 myweb 就是指 myweb.py,app 就是那個 wsgifunc 的名字,這樣運行監聽 8000 埠,原先的 5000 埠並沒有啟用,-w 表示開啟多少個 worker,-b 表示 Gunicorn 開發的訪問地址。
想要結束 Gunicorn 只需執行 pkill Gunicorn,但有時候還要 ps 找到 pid 進程號才能 kill。可是這對於一個開發來說,太過於繁瑣,因此出現了另外一個神器 ---supervisor,一個專門用來管理進程的工具,還可以管理系統的工具進程。
安裝 Supervisor
pip install supervisor
echo_supervisord_conf > supervisor.conf # 生成 supervisor 默認配置文件gedit supervisor.conf # 修改 supervisor 配置文件,添加 gunicorn 進程管理在 supervisor.conf 底部下添加 myweb.py 的配置 `/home/wang/supervisor/super` 是我的項目目錄」

[program:myweb]
command=/home/wang/supervisor/super/bin/gunicorn -w 4 -b 0.0.0.0:8000 myweb:app
directory=/home/wang/supervisor
startsecs=0 stopwaitsecs=0 autostart=false
autorestart=false
user=wang
stdout_logfile=/home/wang/supervisor/log/gunicorn.log
stderr_logfile=/home/wang/supervisor/log/gunicorn.err

supervisor 的基本使用命令:
supervisord -c supervisor.conf supervisorctl -c supervisor.conf status 查看supervisor的狀態
supervisorctl -c supervisor.conf reload 重新載入 配置文件
supervisorctl -c supervisor.conf start [all]|[appname] 啟動指定/所有 supervisor 管理的程序進程
supervisorctl -c supervisor.conf stop [all]|[appname] 關閉指定/所有 supervisor 管理的程序進程

supervisor 還有一個 web 的管理界面,可以激活。更改下配置:
[inet_http_server] ; inet (TCP) server disabled by defaultport=127.0.0.1:9001 ; (ip_address:port specifier, *:port for alliface)
username=wang ; (default is no username (open server)
password=123 ; (default is no password (open server))

[supervisorctl]
serverurl=unix:///tmp/supervisor.sock ; use a unix:// URL for a unix socketserverurl=http://127.0.0.1:9001 ; use an http:// url to specify an inet socketusername=wang ; should be same as http_username if setpassword=123 ; should be same as http_password if set;prompt=mysupervisor ; cmd line prompt (default "supervisor");history_file=~/.sc_history ; use readline history if available

現在可以使用 supervsior 啟動 gunicorn 啦。運行命令:
supervisord -c supervisor.conf

瀏覽器訪問 http://127.0.0.1:9001 可以得到 supervisor 的 web 管理界面,訪問 http://127.0.0.1:8000 可以看見 gunicorn 啟動的返回的頁面。
配置 Nginx
前面我們已經在系統環境下安裝了 Nginx, 安裝好的 Nginx 二進制文件放在 /usr/sbin/ 文件夾下,接下來使用 Supervisor 來管理 Nginx。這里需要注意一個問題,許可權問題。Nginx 是 sudo 的方式安裝,啟動的適合也是 root 用戶,那麼我們現在也需要用 root 用戶啟動 supervisor。在 supervisor.conf 下添加配置文件:
[program:nginx]command=/usr/sbin/nginxstartsecs=0stopwaitsecs=0autostart=falseautorestart=falsestdout_logfile=/home/wang/supervisor/log/nginx.logstderr_logfile=/home/wang/supervisor/log/nginx.err

好了,都配置完之後,啟動 supervisor:
supervisord -c supervisor.conf

訪問頁面,也可以用 ab 進行壓力測試:
ab -c 100 -n 100 http://127.0.0.1:8000/qw/1

-c 用於指定壓力測試的並發數, -n 用於指定壓力測試總共的執行次數。
安裝 Python 探針
搭建好了 web,想實時監控應用數據,有什麼好的工具,用 OneAPM 的 Python 探針試試,
首先也是安裝 Python 探針:
pip install -i http://pypi.oneapm.com/simple --upgrade blueware

根據 License Key 生成配置文件:
blueware-admin generate-config (License Key) = blueware.ini

由於是在虛擬環境下,所以要特別注意路徑,修改 supervisor.conf 裡面兩項:
[program:myapp]
command = /home/wang/supervisor/super/bin/blueware-admin run-program /home/wang/supervisor/super/bin/gunicorn -w 4 -b 0.0.0.0:8000 myapp:app
environment = BLUEWARE_CONFIG_FILE=blueware.ini

重啟應用
supervisorctl # 進入命令行supervisor> reload # 重新載入

向上面一樣訪問頁面,也可以用 ab 進行壓力測試
幾分鍾後有下圖,可以看到頁面載入時間,web 事物,頁面吞吐量,其中後面是設置自定義事物「Business Transaction」。

參考文章

⑹ Python自學可以嗎

當然可以自學。Python是一門相對來說比較簡單的編程語言,自學完全ok。

2、現用現學。這是我個人的學習方法,供大家參考。我是先學一遍基礎教程,然後在量化平台開始數據分析,用到什麼不會再去補什麼,比如數據分析用到pandas,我再去學pandas。

哪怕是基礎知識,當用到時發覺忘記了回頭復習鞏固是常有之事。只有追著自己想要的東西去學,學會了才有成就感,有動力繼續下去。這好比你追求妹子,每日負責接送,送花送包包,一段時間後,妹子和你牽手了,你才有成就感,才有動力追下去。

不信你可以做一下各種py基礎教程的練習題,做起來不是那麼有趣,有點做奧賽題的感覺,很傷腦筋,你又不知道跟自己想要的有什麼關系,你很快會覺得無聊。但大家對於基礎課程要堅持,練習題可以不做,但你要保證自己至少看懂了教程的內容。

所以,學習python是不難的,關鍵還是要有目的還有恆心,三天曬網兩天打魚這樣肯定是不成的。

⑺ Python 有哪些好的 Web 框架

python的web框架很多
django (大而全,模板,orm都自帶)
flask (pocoo出品,比屬精品,自帶jinja2模板,可以替換)
web.py (這個我沒用過,作者自殺,白瞎了一個高手)
bottle (只有一個文件的框架,需要自己構建整個開發體系)
uliweb (中國人開發的,也很不錯)
Tornado (非同步框架,適合長連接,比如在線聊天之類的)

Python框架雖然說是百花齊放,但仍然有那麼一家是最大的,它就是Django。Django為人所稱道的地方主要有:
①完美的文檔,Django的成功,我覺得很大一部分原因要歸功於Django近乎完美的官方文檔(包括Django book)。

全套的解決方案,Django象Rails一樣,提供全套的解決方案(full-stack framework + batteries
included),基本要什麼有什麼(比如:cache、session、feed、orm、geo、auth),而且全部Django自己造,開發網
站應手的工具Django基本都給你做好了,因此開發效率是不用說的,出了問題也算好找,不在你的代碼里就在Django的源碼里。
③強大的URL路由配置,Django讓你可以設計出非常優雅的URL,在Django里你基本可以跟醜陋的GET參數說拜拜。
④自助管理後台,admin interface是Django里比較吸引眼球的一項contrib,讓你幾乎不用寫一行代碼就擁有一個完整的後台管理界面。

php的發展如何

網路 騰訊 新浪 均採用php,發展和應用環境越來越來越廣泛

⑼ 如何找到安裝python-jinja2等包

別用pip,直接去安裝jinjia2,在目錄下運行:
python setup.py install

熱點內容
androiddecoder 發布:2025-01-11 05:44:13 瀏覽:730
蘇州數控編程培訓 發布:2025-01-11 05:42:51 瀏覽:855
編程式控制制小船 發布:2025-01-11 05:35:05 瀏覽:756
螢石雲清理緩存 發布:2025-01-11 05:34:29 瀏覽:779
怎麼在電腦上傳照片 發布:2025-01-11 05:30:20 瀏覽:487
python3哪個版本好 發布:2025-01-11 05:07:29 瀏覽:864
手機怎麼訪問外網 發布:2025-01-11 05:07:27 瀏覽:532
財務信息伺服器搭建 發布:2025-01-11 04:48:09 瀏覽:875
演算法實現過程 發布:2025-01-11 04:43:45 瀏覽:458
瞄準下載ftp 發布:2025-01-11 04:43:44 瀏覽:573