1.创建PyCharm工程
使用PyCharm创建testHelloWorld工程,如下图所示:
2.选择本项目下的Python解释器
通过File -> Setting…
选择解释器为本工程下的Python解释器。
【备注:一定要将项目python环境依赖存至本项目下,默认依赖本机python环境(会造成依赖包过多)】
3.代码编辑
创建main.py文件和test.html文件,代码如下:
main.py
"""=== coding: UTF8 ==="""from lxml import etree"""========================================主函数功能测试========================================"""if __name__ == '__main__':parser = etree.HTMLParser(encoding='utf-8')tree = etree.parse("test.html", parser=parser)# result = tree.xpath("/html") # /表示层级关系,第一个/是根节点# result = tree.xpath("/html/body/ul/li/a/text()") # text()拿文本# result = tree.xpath("/html/body/ul/li[1]/a/text()") # xpath的顺序是从1开始数的,[]表示索引# result = tree.xpath("/html/body/ol/li/a[@href='dapao']/text()") # @xxx=xxx表示属性的筛选# print(result)ol_li_list = tree.xpath("/html/body/ol/li")for li in ol_li_list:# 从每一个li中提取到文字信息result = li.xpath("./a/text()") # 在li中继续查找,相对查找print(result)result = li.xpath("./a/@href") # 拿到属性值: @属性print(result)print(tree.xpath("/html/body/ul/li/a/@href"))print(tree.xpath("/html/body/div[1]/text()"))print(tree.xpath("/html/body/ol/li/a/text()"))
test.html
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>测试</title></head><body><ul><li><a href="">百度</a></li><li><a href="">谷歌</a></li><li><a href="">搜狗</a></li></ul><ol><li><a href="feiji">飞机</a></li><li><a href="dapao">大炮</a></li><li><a href="huoche">火车</a></li></ol><div class="job">高凡尔</div><div class="common">刘珂</div></body></html>
安装lxml模块后,编译运行,效果如下:
4.导出本项目程序依赖
在项目main.py界面鼠标右键,选择菜单Open in Terminal
,打开Shell面板。
输入以下命令导出本项目依赖至requirements文件:
pip freeze > requirements.txt
5.打包前准备
在下载的testHelloWorld文件夹下面创建docker_test文件夹,同级目录下创建Dockerfile文件,在docker_test文件夹下面添加main.py源代码和requirements.txt文件。
6.创建Dockerfile文件,添加内容
在Dockerfile文件中输入以下内容:
# python版本,可根据需求进行修改FROM python:3.8-alpineRUN mkdir /code# 将代码和项目依赖添加到code文件夹ADD ./docker_test /code# 设置code文件夹是工作目录WORKDIR /codeRUN pip install -r requirements.txt# 镜像运行时执行的命令,这里的配置等于 python main.pyENTRYPOINT ["python","main.py"]
7.打包Docker镜像
在testHelloWorld文件夹下,打开命令终端,使用root权限打包即可;我使用的是SecureCRT远程连接虚拟机Debian系统。
输入以下命令打包为mypythontest镜像:(最后有一个点)
podman build -t mypythontest .
打包镜像完毕后,使用下面命令查看镜像:
podman images
使用下面命令运行打包成功的mypythontest镜像,成功出现预期结果!!!
podman run mypythontest
获取更多技术干货,请访问大土土随笔
如果本文对您有所帮助,请关注微信公众号“捷创源科技”。
如果觉得《Linux Debian利用Dockefile将Python的py文件项目代码打包为Docker Podman镜像》对你有帮助,请点赞、收藏,并留下你的观点哦!