Python 项目:文本到 HTML 转换器
我们将使用 pytextile 模块将文本转换为 HTML。输入文本遵循特定的语法,使用此模块生成 HTML 代码。
在这里,我将展示 - 有序列表、无序列表、图像链接、粗体文本和符号、普通文本如何使用该模块进行转换。
先决条件:
-
Python 已安装
-
IDE或Shell(我更喜欢Spyder)
第一步:安装库
首先,安装PyTextile模块。
pip install textile
Python 已经随 Tkinter 一起提供。不过,如果您认为遇到问题,您可以手动安装它。
pip install tk
第二步:通过导入库开始编码
我创建了一个名为text2html.py的 python 文件并导入了我需要的两个库**(纺织品和 Tkinter)**。
import textile
import tkinter as tk
第三步:创建一个空函数并初始化Tk的实例
导入所有库后,现在创建一个函数并让它保持为空。完成 GUI 实现后,我们稍后再讨论它。我在这里将我的函数命名为 convertToHtml()。
我们还将使用Tk类创建应用程序的根。这将作为我们的应用程序窗口。
def convertToHtml():
#fornow empty
root = tk.Tk()
第四步:指定应用
现在,我们将为我们的应用程序指定窗口的大小。
root.geometry("250x170")
第五步:创建小部件并打包
我们将需要一个文本小部件、一个按钮和一个标签。在这一步中,我们将创建它们并将它们打包到应用程序窗口中。我们将通过按钮小部件的命令参数调用我们的方法convertToHtml()。
# Create Text for input
T = tk.Text(root, height = 5, width = 52)
T.pack()
T.insert(tk.END,"""""" )
# Create button for result generation
b1 = tk.Button(root, text = "Submit", command=convertToHtml)
b1.pack()
# Create label for result display
lbl = tk.Label(root, text = "")
lbl.pack()
第六步:添加mainloop()方法
现在,让我们在代码中调用**mainloop() **方法,以便我们的应用程序运行。
root.mainloop()
第 7 步:将文本转换为 Html 的代码
现在,回到代码的开头并转到方法convertToHtml()。主要的魔法将在这里发生。
T.get()从用户那里获取输入并将其存储到inp变量中。然后textile.textile()将文本转换为 HTML 存储在html中。
lbl.config()保存输出结果,但我们也使用 print() 函数显示它。
单击按钮 b1 时,将调用convertToHtml()方法。
def convertToHtml():
#fornow empty
inp = T.get(1.0, "end-1c")
html = textile.textile( inp )
print("\nAfter converted to HTML: \n",html)
lbl.config(text = "Converted Html : "+html)
第八步:执行你的代码
执行后,您将看到打开了以下窗口。

第九步:在打开的控制台上写
您可以将以下部分复制并粘贴到打开的控制台的文本输入框中
Ordered List
# One
# Two
# Three
Unordered List
* One
* Two
* Three
Image Link
"Freedom":https://images.unsplash.com/photo-1519834785169-98be25ec3f84?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxzZWFyY2h8NXx8c3VjY2Vzc3xlbnwwfHwwfHw%3D&w=1000&q=80
Normal Text
Just Like that
Bold Text
*This is bold*
Adding &
She & Her
然后单击提交,一些输出将在控制台和 IDE 或 shell 中生成。复制作为环境输出生成的文本。对于上面的输入,我得到如下输出:
输出
生成的输出是可以创建 HTML 页面的 HTML 语法。
<p>Ordered List
<ol>
<li>One</li>
<li>Two</li>
<li>Three</li>
</ol></p>
<p>Unordered List
<ul>
<li>One</li>
<li>Two</li>
<li>Three<br />
Image Link<br />
<a href="https://images.unsplash.com/photo-1519834785169-98be25ec3f84?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxzZWFyY2h8NXx8c3VjY2Vzc3xlbnwwfHwwfHw%3D&w=1000&q=80">Freedom</a></li>
</ul></p>
<p>Normal Text </p>
<p>Just Like that</p>
<p>Bold Text </p>
<p><strong>This is bold</strong></p>
<p>Adding &</p>
<p>She & Her</p>
第 9 步:HTML 页面测试与输出
在任何文件夹中创建一个 .html 文件。就我而言,我创建了 test.html,然后将输出粘贴到该文件中。单击保存并在浏览器上打开文件。您正在查看的 html 页面是从您的代码生成的,其中包含有序列表、无序列表、图像链接、普通文本、粗体文本和添加 &。

完整代码:
import textile
import tkinter as tk
def covertToHtml():
#fornowempty
inp=T.get(1.0,"end-1c")
html=textile.textile(inp)
print("\nAfter converted to HTML: \n",html)
lbl.config(text="Converted Html : "+html)
root=tk.Tk()
root.geometry("250x170")
# Create Text for input
T=tk.Text(root,height=5,width=52)
T.pack()
T.insert(tk.END,"""""")
# Create button for result generation
b1=tk.Button(root,text="Submit",command=covertToHtml)
b1.pack()
# Create label for result display
lbl=tk.Label(root,text="")
lbl.pack()
root.mainloop()
友情链接
1.PyTextile

更多推荐

所有评论(0)