Using linnux + phantomjs to generate webpage snapshots in image format,

Source: Internet
Author: User

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.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.