前言

这几天要做一个将HTML转化为PDF的小功能。期间经历了颇多的挫折,刚开始是通过java做的,后来发现java库做这个事情实在是效果不理想,前端做好了样式转完之后会出现很多问题。后来我想起来python的库很丰富就上网找了pdfkit这个库,使用这个库需要安装wkhtmltopdf。完成之后觉得以后可能会需要到就把这个过程给记录下来。

安装python3

Centos7默认安装的有python2.7.5,而且yum也依赖这个东西。当时所以安装python3的时候要注意一下它俩的共存关系。安装完python3需要将软连接改为python3的连接,修改yum什么的。具体可以参考下面这个博客。当时安装这个python的时候真的是一把辛酸泪,我不知道centeos7自带的有python2我还以为我装错了,然后把python2删除了,后来发现yum不能用了然后上网查了一下才发现自己的操作是如此的骚,然后我就试着修复这个问题,最骚的操作是我拿着root的权限来操作,在删除几个文件的时候不小心打出了

rm -rf *

的操作然后把服务器给删了(完美),然后我就开始了漫长的加班之路。

wkhtmltoPdf安装

安装wkhtmltoPdf这个工程还是比较简单的,安装完我运行了一下发现出现了如下错误:

wkhtmltopdf: error while loading shared libraries: libXext.so.: cannot open shared object file: No such file or directory

这个错误刚开始让我以为是我删除python2删的,然后为了修复python2就开始了我删除服务器的道路(/捂脸哭)。后来发现是少了库,然后就用yum(说实话怎么着我也是要修复python2的,这就是命吧,注定我要删除服务器)安装,如果运行过程中出现其他错误,请看这篇博客。之后你可能会遇见转的pdf都是方块,什么中文不在什么的,请看这篇博客

pdfkit安装

这个是整个过程中最简单的操作。直接

pip install pdfkit

就可以了。

结束语

嗯,整个操作过程就是这样。从这个过程中我学到一个东西,千万不要轻易使用root权限操作文件,使用删除文件指令的之后一定要看清楚指令,一定要看清楚指令,一定要看清楚指令。

Centos7+安装python3+wkhtmltoPdf+pdfkit的更多相关文章

  1. Centos7 安装python3

    Centos7 安装python3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 #安装sqlite-devel yum -y ...

  2. centos7安装 python3.6,且保留2.7版本

    CENTOS7安装PYTHON3.6 1. 安装python3.6可能使用的依赖# yum install openssl-devel bzip2-devel expat-devel gdbm-dev ...

  3. CentOS7 安装Python3,开发SocketIO 客户端

    CentOS7安装Python3,开发SocketIO 客户端 参考:https://blog.csdn.net/lovefengruoqing/article/details/79284573 步骤 ...

  4. centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题。

    centos7安装Python3的过程中会和Python2.7版本冲突导致yum版本比对应,致使yum不能使用的问题. 原因:yum调用Python,启动程/usr/bin/yum就是一个python ...

  5. Linux(4)- centos7安装python3、Linux下安装、配置virtualenv、确保开发环境的一致性、虚拟环境之virtualenvwrapper、vim

    一.centos7安装python3 1.下载python3的源码包 下载地址:https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz cd ...

  6. centos7安装python3.7

    Centos7安装Python3的方法   由于centos7原本就安装了Python2,而且这个Python2不能被删除,因为有很多系统命令,比如yum都要用到. [root@VM_105_217_ ...

  7. centos7 安装 python3.5

    centos7 安装 python3.5 一. python虚拟环境virtualenv VirtualEnv用于在一台机器上创建多个独立的python运行环境,VirtualEnvWrapper为前 ...

  8. CentOS7 安装Python3.6.8

    CentOS7 安装Python3.6.8 1. 安装依赖环境 yum -y groupinstall "Development tools" yum -y install zli ...

  9. 解决Centos7安装python3后pip工具无法使用

    问题描述: Centos7安装python3,正常流程全部配置完成,python3,pip3的软链接也建立了 但是python3可以正常使用,而pip3报错,无法找到文件或目录 解决方法: which ...

随机推荐

  1. [Luogu P4143] 采集矿石 [2018HN省队集训D5T3] 望乡台platform

    [Luogu P4143] 采集矿石 [2018HN省队集训D5T3] 望乡台platform 题意 给定一个小写字母构成的字符串, 每个字符有一个非负权值. 输出所有满足权值和等于这个子串在所有本质 ...

  2. Django 通过APNS推送消息

    最近手上一个项目需要通过APNS向app推送消息,由于后端采用drf框架,在github上找了好多模块,最终发现pzanitti大神的推送模块 django-push-notifications 比较 ...

  3. 【转】.net core 一次坑爹的类库打包过程

    自己遇到这个问题,记录一下,原文链接:http://www.cnblogs.com/Hai--D/p/5776463.html. 众所周知,.net core 跨平台类库引用一定要通过nuget获得. ...

  4. 关于 MFRC522引脚功能图

    MFRC522是属于13.56mhz芯片.另外SI522也是13.56mhz芯片,SI522 PIN对PIN完全兼容MFRC522,并且软硬件兼容,且引脚功能图都是一样的,功能方面比MFRC522多A ...

  5. .Net文档下载

    public static void DownLoadFile(string fileName, HttpResponse Response, HttpServerUtility Server) { ...

  6. 预编译指令#ifdef #endif

    这个是C中的.意思是说如果你定义了某个东西,则执行一段代码,这段代码是包含在ifdef到endif之间的.比如,你debug一个程序,但是到最后你需要将debug的代码删掉,很多则很麻烦.但是如果你那 ...

  7. bapi获取物料的可用数量及MRP信息(MD04)

    需求:在报表里面添加可用数量字段,数据来源于MD04. 使用到的bapi:MD_STOCK_REQUIREMENTS_LIST_API 这个bapi可以查看到MRP信息以及可用数量. bapi需要的参 ...

  8. 微信小程序页面传多个参数

    在需要页面之间传递多个参数的时候,需要用&链接起来,上一页的正确跳转代码如下: var that = this; wx.navigateTo({ url: '../../pages/myLis ...

  9. iOS Swift WisdomKeyboardKing 键盘智能管家SDK

    iOS Swift WisdomKeyboardKing 键盘智能管家SDK [1]前言:    今天给大家推荐个好用的开源框架:WisdomKeyboardKing,方面iOS日常开发,优点和功能请 ...

  10. 基于VHDL的8255可编程并行接口电路设计

    一.实验题目名称: 8255可编程并行接口电路设计 二.实验目的.任务和要求: 实验目的:学习掌握基本的数字系统设计方法,建立自顶向下的设计思维,能够使用VHDL语言编写简单的应用IP核,掌握基本的F ...