精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Pelican入門:一個Python靜態網站生成器

開發 后端
如果你想創建一個自定義網站或博客,有很多選擇。許多提供商可以托管你的網站并為你完成大部分工作。但是使用托管方式,你會失去一些靈活性。作為一名軟件開發人員,我更喜歡管理我自己的服務器,并在我的網站如何運行方面保持更多的自由。

    [[256276]]

Pelican 是那些想要自我托管簡單網站或博客的 Python 用戶的***選擇。

如果你想創建一個自定義網站或博客,有很多選擇。許多提供商可以托管你的網站并為你完成大部分工作。(WordPress 是一個非常受歡迎的選項。)但是使用托管方式,你會失去一些靈活性。作為一名軟件開發人員,我更喜歡管理我自己的服務器,并在我的網站如何運行方面保持更多的自由。

然而,管理 Web 服務器需要大量的工作。安裝它并獲得一個簡單的應用程序來提供內容是非常容易的。但是,維護安全補丁和更新是非常耗時得。如果你只想提供靜態網頁,那么擁有一個 Web 服務器和一系列應用程序可能會得不償失。手動創建 HTML 頁面也不是一個好選擇。

這是靜態網站生成器的用武之地。這些應用程序使用模板來創建所需的靜態頁面,并將它們與關聯的元數據交叉鏈接。(例如,所有顯示的頁面都帶有公共標簽或關鍵詞。)靜態網站生成器可以幫助你使用導航區域、頁眉和頁腳等元素創建一個具有公共外觀的網站。

我使用 Pyhton 已經很多年了,所以,當我***次開始尋找生成靜態 HTML 頁面的東西時,我想要用 Python 編寫的東西。主要原因是我經常想要了解應用程序如何工作的內部細節,而使用一種我已經了解的語言使這一點更容易。(如果這對你不重要或者你不使用 Python,那么還有一些其他很棒的靜態網站生成器,它們使用 Ruby、JavaScript 和其它語言。)

我決定試試 Pelican。它是一個用 Python 編寫的常用靜態網站生成器。它支持 reStructuredText(LCTT 譯注:這是一種用于文本數據的文件格式,主要用于 Python 社區的技術文檔),并且也支持 Markdown,這需要通過安裝必需的包來完成。所有任務都是通過命令行界面(CLI)工具執行的,這使得熟悉命令行的任何人都可以輕松完成。它簡單的 quickstart CLI 工具使得創建一個網站非常容易。

在本文中,我將介紹如何安裝 Pelican 4,添加一篇文章以及更改默認主題。(注意:我是在 MacOS 上開發的,使用其它 Unix/Linux 實驗結果都將相同,但我沒有 Windows 主機可以測試。)

安裝和配置

***步是創建一個虛擬環境,在虛擬環境中安裝 Pelican。

  1. $ mkdir test-site
  2. $ cd test-site
  3. $ python3 -m venv venv
  4. $ ./venv/bin/pip install --upgrade pip
  5. ...
  6. Successfully installed pip-18.1
  7. $ ./venv/bin/pip install pelican
  8. Collecting pelican
  9. ...
  10. Successfully installed MarkupSafe-1.1.0 blinker-1.4 docutils-0.14 feedgenerator-1.9 jinja2-2.10 pelican-4.0.1 pygments-2.3.1 python-dateutil-2.7.5 pytz-2018.7 six-1.12.0 unidecode-1.0.23

Pelican 的 quickstart CLI 工具將創建基本布局和一些文件來幫助你開始,運行 pelican-quickstart 命令。為了簡單起見,我輸入了網站標題作者的名字,并對 URL 前綴和文章分頁選擇了 “N”。(對于其它選項,我使用了默認值。)稍后在配置文件中更改這些設置非常容易。

  1. $ ./venv/bin/pelicanquickstart
  2. Welcome to pelicanquickstart v4.0.1.
  3.  
  4. This script will help you create a new Pelican-based website.
  5.  
  6. Please answer the following questions so this script can generate the files needed by Pelican.
  7.  
  8. > Where do you want to create your new web site? [.]
  9. > What will be the title of this web site? My Test Blog
  10. > Who will be the author of this web site? Craig
  11. > What will be the default language of this web site? [en]
  12. > Do you want to specify a URL prefix? e.g., https://example.com (Y/n) n
  13. > Do you want to enable article pagination? (Y/n) n
  14. > What is your time zone? [Europe/Paris]
  15. > Do you want to generate a tasks.py/Makefile to automate generation and publishing? (Y/n)
  16. > Do you want to upload your website using FTP? (y/N)
  17. > Do you want to upload your website using SSH? (y/N)
  18. > Do you want to upload your website using Dropbox? (y/N)
  19. > Do you want to upload your website using S3? (y/N)
  20. > Do you want to upload your website using Rackspace Cloud Files? (y/N)
  21. > Do you want to upload your website using GitHub Pages? (y/N)
  22. Done. Your new project is available at /Users/craig/tmp/pelican/test-site

你需要啟動的所有文件都準備好了。

quickstart 默認為歐洲/巴黎時區,所以在繼續之前更改一下。在你喜歡的文本編輯器中打開 pelicanconf.py 文件,尋找 TIMEZONE 變量。

  1. TIMEZONE = 'Europe/Paris'

將其改為 UTC

  1. TIMEZONE = 'UTC'

要更新公共設置,在 pelicanconf.py 中查找 SOCIAL 變量。

  1. SOCIAL = (('You can add links in your config file', '#'),
  2.           ('Another social link', '#'),)

我將添加一個我的 Twitter 賬戶鏈接。

  1. SOCIAL = (('Twitter (#craigs55)', 'https://twitter.com/craigs55'),)

注意末尾的逗號,它很重要。這個逗號將幫助 Python 識別變量實際上是一個集合。確保你沒有刪除這個逗號。

現在你已經有了網站的基本知識。quickstart 創建了一個包含許多目標的 Makefile。將 devserver 傳給 make 命令將在你的計算機上啟動一個開發服務器,以便你可以預覽所有內容。Makefile 中使用的 CLI 命令假定放在 PATH 搜索路徑中,因此你需要首先激活該虛擬環境。

  1. $ source ./venv/bin/activate
  2. $ make devserver
  3. pelican -lr /Users/craig/tmp/pelican/test-site/content o
  4. /Users/craig/tmp/pelican/test-site/output -s /Users/craig/tmp/pelican/test-site/pelicanconf.py
  5.  
  6. -> Modified: theme, settings. regenerating...
  7. WARNING: No valid files found in content for the active readers:
  8.    | BaseReader (static)
  9.    | HTMLReader (htm, html)
  10.    | RstReader (rst)
  11. Done: Processed 0 articles, 0 drafts, 0 pages, 0 hidden pages and 0 draft pages in 0.18 seconds.

在你最喜歡的瀏覽器中打開 http://localhost:8000 來查看你的簡單測試博客。

你可以在右側看到 Twitter 鏈接,左側有 Pelican、Python 和 Jinja 的一些鏈接。(Jinja 是 Pelican 可以使用的一種很棒的模板語言。你可以在 Jinja 的文檔中了解更多相關信息。)

添加內容

現在你又了一個基本的網站,試著添加一些內容。首先,將名為 welcome.rst 的文件添加到網站的 content 目錄中。在你喜歡的文本編輯器中,使用以下文本創建一個文件:

  1. $ pwd
  2. /Users/craig/tmp/pelican/test-site
  3. $ cat content/welcome.rst
  4.  
  5. Welcome to my blog!
  6. ###################
  7.  
  8. :date: 20181216 08:30
  9. :tags: welcome
  10. :category: Intro
  11. :slug: welcome
  12. :author: Craig
  13. :summary: Welcome document
  14.  
  15. Welcome to my blog.
  16. This is a short page just to show how to put up a static page.

Pelican 會自動解析元數據行,包括日期、標簽等。

編寫完文件后,開發服務器應該輸出以下內容:

  1. -> Modified: content. regenerating...
  2. Done: Processed 1 article, 0 drafts, 0 pages, 0 hidden pages and 0 draft pages in 0.10 seconds.

在瀏覽器中刷新你的測試網站來查看更改。

元數據(例如日期和標簽)會自動添加到頁面中。此外,Pelican 會自動檢測到 intro 欄目,并將該部分添加到頂部導航中。

更改主題

使用像 Pelican 這樣流行的開源軟件的好處之一是,非常多的用戶會做出更改并將其貢獻給項目。許多都是以主題形式貢獻的。

網站的主題會設置顏色、布局選項等。嘗試一個新主題非常容易,你可以在 Pelican 主題中預覽其中的許多內容。

首先,克隆 GitHub 倉庫:

  1. $ cd ..
  2. $ git clone --recursive https://github.com/getpelican/pelicanthemes
  3. Cloning into 'pelicanthemes'...

我喜歡藍色,那么試試 blueidea

編輯 pelicanconf.py,添加以下行:

  1. THEME = '/Users/craig/tmp/pelican/pelican-themes/blueidea/'

開發服務器將重新生成你的輸出。在瀏覽器中刷新網頁來查看新主題。

主題控制布局的方方面面。例如,在默認主題中,你可以看到文章旁邊帶有元標記的欄目(Intro),但這個欄目并未顯示在 blueidea 主題中。

其他考慮因素

本文是對 Pelican 的快速介紹,所以我并沒有涉及一些重要的主題。

首先,我對遷移到靜態站點猶豫不決的一個原因是它無法對文章評論。幸運的是,有一些第三方服務商將為你提供評論功能。我目前正在關注的是 Disqus。

接下來,上面的所有內容都是在我的本地機器上完成的。如果我希望其他人查看我的網站,我將不得不將預先生成的 HTML 文件上傳到某個地方。如果你查看 pelican-quickstart 輸出,你將看到使用 FTP、 SSH、S3 甚至 GitHub 頁面的選項,每個選項都有其優點和缺點。但是,如果我必須選擇一個,那么我可能會選擇發布到 GitHub 頁面。

Pelican 還有許多其他功能,我每天都在學習它。如果你想自托管一個網站或博客,內容簡單并且是靜態內容,同時你想使用 Python,那么 Pelican 是一個很好的選擇。它有一個活躍的用戶社區,可以修復 bug,添加特性,而且還會創建新的和有趣的主題。試試看吧!

 【編輯推薦】

 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2023-02-07 16:11:41

2018-11-19 10:10:51

Python數據庫隨機生成器

2023-03-08 09:06:24

2020-09-08 11:21:48

SQL生成器跨庫

2020-10-05 21:57:43

Python生成器可迭代對象

2024-08-19 00:00:00

表單生成器開發開源

2024-06-12 13:40:58

2024-10-07 08:52:59

分布式系統分布式 IDID

2022-06-17 11:04:46

生成器計算

2024-12-09 00:00:03

Vue3項目表單

2022-07-25 10:27:36

背景生成器工具前端

2017-09-06 09:26:03

Python生成器協程

2021-12-04 22:07:44

Python

2023-10-27 09:40:52

VitePressGatsby

2022-08-28 19:10:37

JavaScript二維碼源碼

2017-05-18 10:00:40

Linuxpandom隨機數生成器

2020-12-09 08:34:24

css生成器設計師

2020-12-20 10:04:44

Qrcode二維碼生成器QR Code

2021-06-24 06:00:51

EleventyJavaScript靜態網站

2023-01-26 10:55:55

生成器Astro靜態站點
點贊
收藏

51CTO技術棧公眾號

九九热在线视频观看这里只有精品| 136导航精品福利| 国产精品丝袜一区| 亚洲精品日产aⅴ| 国产午夜精品无码| 精品一区三区| 91精品国产综合久久久久久漫画 | 91在线观看免费观看| 国产一级做a爰片在线看免费| 欧美美女啪啪| 欧美日韩国产一区| 日韩精品一区在线视频| 成人资源www网在线最新版| 国产一区二区在线免费观看| 77777少妇光屁股久久一区| 免费看91的网站| 999久久精品| 在线不卡欧美精品一区二区三区| 成人毛片一区二区| 日本视频在线免费观看| 99久久精品国产导航| 国产一区私人高清影院| 亚洲天堂av片| 极品少妇一区二区三区| 日韩中文第一页| 欧美丰满少妇人妻精品| 精品一区二区三区四区五区| 在线欧美日韩精品| 日日摸日日碰夜夜爽无码| 毛片av在线| 久久精品欧美一区二区三区不卡 | 国产喷水吹潮视频www| 亚洲一区不卡| 久久久久久av| 在线免费观看亚洲视频| 久久久影院免费| 亚洲人午夜精品免费| 亚洲av人人澡人人爽人人夜夜| 激情久久99| 色欧美乱欧美15图片| 成人毛片一区二区| 91超碰在线免费| 一区二区激情视频| 最新中文字幕久久| 美女隐私在线观看| 亚洲欧洲日韩在线| 日韩影院一区| 97视频在线观看网站| 久久午夜色播影院免费高清| 国精产品一区二区| 日本高清视频免费观看| 成人免费毛片嘿嘿连载视频| 亚洲a级在线播放观看| 国产又粗又长视频| 久久99精品国产.久久久久久| 国产精品久久久久久中文字| 日韩免费av网站| 日韩在线观看一区二区| 国产精品96久久久久久| 秋霞av一区二区三区| 美女视频一区免费观看| 日本精品一区二区三区在线| 无码人妻黑人中文字幕| 视频一区二区不卡| 国产精品久久久久久久久粉嫩av| 蜜臀尤物一区二区三区直播| 日韩不卡一二三区| 国产欧美精品一区二区三区-老狼| 在线观看黄色国产| 精品一区二区三区在线观看国产| 91精品国产综合久久久久久久久| 在线观看中文字幕网站| 韩国一区二区视频| 粉嫩精品一区二区三区在线观看 | 国产大尺度在线观看| 国产日产一区二区| 亚洲夂夂婷婷色拍ww47| 国产69精品久久久久999小说| 天堂а√在线最新版中文在线| 欧美日韩一区免费| 日韩欧美黄色大片| 97精品资源在线观看| 日韩精品一区二区在线观看| 成人在线视频免费播放| 精品国产乱码久久久| www.午夜精品| 国产午夜福利精品| 六月天综合网| 亚洲在线视频福利| 深夜福利视频一区| 国产精品日产欧美久久久久| 亚洲av综合色区| 亚洲天堂手机| 制服.丝袜.亚洲.中文.综合| 精品国产一区在线| 999精品视频| 992tv成人免费影院| 一区二区自拍偷拍| 成人性生交大片免费看视频在线| 欧美极品一区| 超碰电影在线播放| 色综合天天天天做夜夜夜夜做| 午夜国产一区二区三区| 粉嫩久久久久久久极品| 中日韩美女免费视频网址在线观看| 亚洲国产精品免费在线观看| 日韩精品每日更新| 国产精品xxxx| 91在线视频免费看| 天天综合天天做天天综合| 亚洲性图一区二区| 日韩伦理一区二区三区| 久久99热这里只有精品国产| 69亚洲精品久久久蜜桃小说| 成人小视频在线| 影音欧美亚洲| 日韩欧美看国产| 亚洲精品一区二区三区在线观看 | 国产91九色视频| www黄色在线观看| 国产精品入口麻豆九色| 国产免费黄视频| 57pao国产一区二区| 在线性视频日韩欧美| 国产欧美日韩另类| 国产福利视频一区二区三区| 一区二区三区在线观看www| 亚洲精品国产精品国产| 精品国产乱码久久久久久浪潮| 午夜成人亚洲理伦片在线观看| 免费中文字幕日韩欧美| 国产美女在线精品免费观看| 色呦呦在线免费观看| 欧美日本一区二区三区四区| 少妇人妻好深好紧精品无码| 国产精品亚洲综合色区韩国| 国产精品综合久久久久久| 50度灰在线| 9191久久久久久久久久久| 夫妇露脸对白88av| 美女网站一区二区| 日韩影院一区| 丰满少妇一区| 亚洲丝袜一区在线| 无码人妻丰满熟妇精品区| 久久女同精品一区二区| 日韩中文字幕在线视频观看| 欧美韩一区二区| 久久露脸国产精品| 日本黄视频在线观看| 亚洲主播在线观看| 午夜不卡久久精品无码免费| 一区三区视频| 黄色小网站91| 乱人伦视频在线| 精品在线欧美视频| 国产中文字幕视频| 国产婷婷色一区二区三区在线| 丰满少妇被猛烈进入高清播放| 日韩极品在线| 国产精品第七影院| 在线视频婷婷| 69久久夜色精品国产69蝌蚪网| 欧洲美女女同性互添| 国产精品99精品久久免费| 特级西西人体www高清大胆| 视频精品一区二区三区| 久久久久久中文| 青草久久伊人| 欧美日韩国产综合视频在线观看 | 国产精品久久久久久久av电影 | 中文字幕在线网站| 国产精品美女久久久久久久 | 国产成a人亚洲精品| 成人免费a级片| 奇米777国产一区国产二区| 日本一本a高清免费不卡| 福利片在线观看| 91精品黄色片免费大全| 国产午夜精品无码| 久久综合狠狠综合| 日韩欧美国产片| 欧美~级网站不卡| 久久精品日产第一区二区三区| 精品国产免费人成网站| 日韩中文视频免费在线观看| 亚洲乱色熟女一区二区三区| 色呦呦国产精品| 亚洲精品卡一卡二| 91婷婷韩国欧美一区二区| 69久久久久久| 亚洲精品影院在线观看| 手机看片福利永久国产日韩| 一区二区三区在线资源| 国产成人精品在线播放| 污网站在线免费看| 亚洲视频在线观看免费| 99视频免费看| 一本久久a久久精品亚洲| 国产一区二区精彩视频| 久久综合一区二区| 亚洲精品中文字幕乱码无线| 亚久久调教视频| 91传媒免费视频| 精品免费在线| 国产精品三区四区| 亚洲福利影视| 日本亚洲精品在线观看| 电影k8一区二区三区久久 | 中文字幕精品亚洲| 成人免费精品视频| 91av视频免费观看| 久久久久久婷| 美女黄色免费看| 国产大片一区| 欧美极品一区| 欧美日韩一区二区三区四区不卡 | 国产精品无码天天爽视频| 欧美视频免费在线| 久久亚洲AV无码| 亚洲同性gay激情无套| 久操视频免费看| 99精品视频一区二区| 黄色三级视频在线播放| 奇米综合一区二区三区精品视频| 日本www在线视频| 欧美日韩亚洲一区三区| 中文视频一区视频二区视频三区| 国模精品一区| 狼狼综合久久久久综合网| 在线播放一区二区精品视频| 成人福利视频网| 国产原创一区| 国产精品久久久久久久久粉嫩av | 欧美一级二级三级区| 国产亚洲精品美女| 欧美3p视频在线观看| 亚洲精品久久久久久久久| 不卡视频在线播放| 欧美一卡二卡在线观看| 一区二区国产欧美| 欧美日韩国产综合久久| 中文字幕一区二区在线视频| 欧美自拍偷拍午夜视频| 欧美性猛交xxxx乱大交hd| 日本精品视频一区二区三区| 精品人妻一区二区三区潮喷在线 | 国产精品一品二区三区的使用体验| 欧美在线不卡视频| 伊人网中文字幕| 欧美日本韩国一区| 97人妻精品一区二区三区| 在线播放亚洲一区| 99热精品在线播放| 日韩欧美国产一区二区三区| www.精品久久| 亚洲国产高清福利视频| 亚洲欧美日本在线观看| 日韩精品999| 国产私人尤物无码不卡| 色先锋资源久久综合5566| 久久bbxx| 久久久久久国产精品美女| 91av久久| 国产999在线观看| 久久精品国产精品亚洲毛片| 91最新国产视频| 成人资源在线| 欧美日韩精品免费在线观看视频| 成人a'v在线播放| 艳母动漫在线观看| 亚洲激情av| 久久久久久久少妇| 韩国午夜理伦三级不卡影院| 国产乱淫av麻豆国产免费| 99视频精品全部免费在线| 一区二区黄色片| 亚洲婷婷综合久久一本伊一区| 免费视频网站www| 日韩欧美在线观看| 国产精品久久欧美久久一区| 精品国一区二区三区| 你懂的视频在线免费| 久久精品国产96久久久香蕉| www欧美xxxx| 国产精品久久久久av免费| 欧美激情三级| 久久亚洲免费| 综合久久一区| av天堂永久资源网| 极品少妇一区二区三区精品视频| 图片区偷拍区小说区| 久久精品视频一区| 青青草激情视频| 日本高清免费不卡视频| 国产日产亚洲系列最新| 精品亚洲夜色av98在线观看 | 午夜精品视频在线| 日韩毛片免费看| 久久免费一区| 一区二区三区在线电影| 国产视频一区二区三区在线播放 | 色琪琪一区二区三区亚洲区| 国产精品午夜福利| 亚洲视频在线播放| 丁香花电影在线观看完整版| 91精品久久久久久久久青青| 日本一道高清一区二区三区| 在线视频一二三区| 久久午夜av| 精品国产av色一区二区深夜久久| 亚洲欧洲日产国码二区| 国产精品第5页| 精品国产乱码久久久久久蜜臀| 日本视频在线免费观看| 日本韩国欧美精品大片卡二| 影音先锋欧美激情| 椎名由奈jux491在线播放| 久久国产精品99国产| 无码人妻aⅴ一区二区三区玉蒲团| 国产精品情趣视频| 国产一级淫片a视频免费观看| 日韩欧美在线影院| 日本福利在线| 国产精品99久久久久久www| 精品亚洲精品| 国产freexxxx性播放麻豆| 久久国产福利国产秒拍| 国产肥白大熟妇bbbb视频| 岛国av一区二区三区| 亚洲精品成人区在线观看| 久久亚洲精品成人| 日韩成人综合网站| 一区二区三区观看| 美女诱惑一区二区| 日韩欧美黄色网址| 日本高清不卡在线观看| 精品视频二区| 国产成人精品a视频一区www| 自拍视频一区| 人妻有码中文字幕| 26uuu精品一区二区在线观看| 国产无遮挡裸体免费视频| 欧美精品一区二区三区蜜桃视频| 日本精品600av| 999热视频在线观看| 欧美成人有码| 高清中文字幕mv的电影| 亚洲国产日韩av| 国产91绿帽单男绿奴| 久久久这里只有精品视频| 久久91在线| 欧美国产激情视频| 26uuu色噜噜精品一区| www五月天com| 在线精品91av| 成人日韩视频| 国产精品自拍合集| 成人黄色网址在线观看| 国产情侣自拍av| 亚洲深夜福利网站| 播放一区二区| 操bbb操bbb| 成人18视频日本| av大全在线观看| 亚洲色图偷窥自拍| 久久久免费人体| 99久久99久久精品| jiyouzz国产精品久久| 少妇高潮av久久久久久| 综合网中文字幕| 日韩成人18| 久久国产成人精品国产成人亚洲| 国产午夜一区二区三区| 国产精品久久免费| 国内精品美女av在线播放| 精品一区亚洲| 91 视频免费观看| 亚洲福利视频一区二区| 久草视频视频在线播放| 91精品国产综合久久香蕉最新版| 国产精品theporn| xxx在线播放| 91麻豆精品国产91久久久更新时间| 不卡视频观看| 亚洲欧美在线网| 成人黄色在线网站| 亚洲天堂777| 97久久精品人人澡人人爽缅北| 精品国产中文字幕第一页| 999热精品视频| 欧美三级欧美成人高清www| 免费黄色网页在线观看| 国产免费一区| 久久狠狠亚洲综合| 99久在线精品99re8热| 久久亚洲影音av资源网| 神马久久影院| 中文字幕av一区二区三区人妻少妇| 狠狠躁18三区二区一区|