Using linnux + phantomjs to generate webpage snapshots in image format,
Installation extension:
(1) The following is the installation process on linux. If git is not installed, run yum install git first.
Install casperjs
Copy codeThe Code is as follows:
Cd/
Git clone git: // github.com/n1k0/casperjs.git
Cd casperjs
Ln-sf/casperjs/bin/casperjs/usr/local/bin/casperjs // you can ignore the actual execution in which php is executed/casperjs/bin/casperjs
(2) install phantomjs,: http://phantomjs.org/download.html
After the download, the operation is very simple. simply move the decompressed \ bin \ phantomjs to \ usr \ local \ bin \ phantomjs. \
Test phantomjs -- if there is a result of version, no error is reported. The installation is OK.
(3) install fonts
1. first obtain a set of "" library (Google click), which contains two files: msyh. ttf (common) and msyhbd. ttf (BOLD );
2. Create a sub-directory under the/usr/share/fonts directory, for example, win. The command is as follows:
Copy codeThe Code is as follows:
# Mkdir/usr/share/fonts/win
3. Copy msyh. ttf and msyhbd. ttf to this directory. For example, if the two files are stored in/root/Desktop, run the following command:
Copy codeThe Code is as follows:
# Cd/root/Desktop
# Cp msyh. ttf msyhbd. ttf/usr/share/fonts/win/
4. Create a font index to update the font cache:
Copy codeThe Code is as follows:
# Cd/usr/share/fonts/win
# Mkfontscale (if mkfontscale: command not found is prompted, you must install it yourself # yum install mkfontscale)
# Mkfontdir
# Fc-cache (if fc-cache: command not found is prompted, install # yum install fontconfig)
Now, the font has been installed!
<? Php if (isset ($ _ GET ['url']) {set_time_limit (0); $ url = trim ($ _ GET ['url']); $ filePath = md5({url}.'.png '; if (is_file ($ filePath) {exit ($ filePath) ;}// if this sentence is not added, the error "Fatal: [Errno 2] No such file or directory; did you install phantomjs? ", For more information, see http://mengkang.net/87.html putenv ("PHANTOMJS_EXECUTABLE =/usr/local/bin/phantomjs"); $ command = "phantomjs. js {$ url} {$ filePath} "; @ exec ($ command); exit ($ filePath) ;}?> <! DOCTYPE html>
var page = require('webpage').create(); var args = require('system').args; var url = args[1]; var filename = args[2]; page.open(url, function () { page.render(filename); phantom.exit(); });
The above is all the content of this article. I hope you will like it.