1. 安装homebrew
首先需要确保安装了homebrew,通过homebrew安装weasyprint可以将需要的库都安装好,比pip安装更简单快捷。
安装方法如下:
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
这个脚本只需要做选择题就可以自动安装homebrew,并设置好国内的镜像源,非常好用。
2. 通过homebrew安装weasyprint
这步更简单,执行以下脚本等待安装完成即可。
brew install weasyprint
正常来说到这里基本上已经结束了,但是由于系统路径问题,苹果系统会出现如下错误:
OSError: cannot load library 'gobject-2.0-0'
可以看到无法找到系统库中的gobject
等组件,这里我们需要手动做一下指向。
执行以下脚本即可,这里只针对通过homebrew安装weasyprint的方法才有效。
sudo ln -s /opt/homebrew/opt/glib/lib/libgobject-2.0.0.dylib /usr/local/lib/gobject-2.0
sudo ln -s /opt/homebrew/opt/pango/lib/libpango-1.0.dylib /usr/local/lib/pango-1.0
sudo ln -s /opt/homebrew/opt/harfbuzz/lib/libharfbuzz.dylib /usr/local/lib/harfbuzz
sudo ln -s /opt/homebrew/opt/fontconfig/lib/libfontconfig.1.dylib /usr/local/lib/fontconfig-1
sudo ln -s /opt/homebrew/opt/pango/lib/libpangoft2-1.0.dylib /usr/local/lib/pangoft2-1.0
如果有如下报错:
只需要手动前往/usr/local/
目录下创建lib
目录即可。
然后就可以成功通过python运行weasyprint模块了。
在网上看到有人说通过homebrew安装python,然后再安装weasyprint可以不需要重新做系统指向,这个我没试过,感兴趣的朋友可以尝试下。