Phantomjs: Phantomjs рдирд╣реАрдВ рджрд┐рдЦрд╛ рд╕рдХрддрд╛ - рдпрд╛ рдХреБрдЫ рдЕрдиреНрдп UTF-8 рд╢рдмреНрджред

рдХреЛ рдирд┐рд░реНрдорд┐рдд 16 рдорд╛рд░реНрдЪ 2014  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: ariya/phantomjs

рдореИрдВ рдПрдХ HTML рдлрд╝рд╛рдЗрд▓ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп HTML рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП url2src.js рд▓рд┐рдЦрддрд╛ рд╣реВрдВ, рдЬрд┐рд╕рдореЗрдВ рд╕рднреА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдВрд╕рд╛рдзрд┐рдд рд╣реЛрддреЗ рд╣реИрдВред
рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдЕрдЧрд░ рдХреБрдЫ UTF-8 рд╢рдмреНрдж (рдЬреИрд╕реЗ -) рд╣реИрдВ, рддреЛ рдкрд░рд┐рдгрд╛рдо рд╕рд╣реА рдирд╣реАрдВ рд╣реИред

рдореИрдВ рд╡рд┐рдВрдбреЛрдЬ 8.1 рдЪреАрдиреА рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рдФрд░ рдЗрд╕ рдХрдорд╛рдВрдб рдХреЛ рд╡рд┐рдВрдбреЛрдЬрд╝ cmd рдореЗрдВ рдЪрд▓рд╛рдПрдБ:

d:\epub\components>phantomjs  --output-encoding=utf8 --script-encoding=utf8 url2src.js activities2.html activities2-processed.html
d:\epub\components>phantomjs --version
1.9.7

url2src.js рдХреА рд╕рд╛рдордЧреНрд░реА рд╣реИ:

var page = require('webpage').create(),
    system = require('system'),
    t, address, output;

if (system.args.length !== 3) {
    console.log('Usage: url2src.js <some URL> <output File path>');
    phantom.exit();
}

t = Date.now();
address = system.args[1];
output = system.args[2];
page.open(address, function (status) {
    if (status !== 'success') {
        console.log('FAIL to load the address : ' + address);
    } else {
        t = Date.now() - t;
        //console.log('Loading time ' + t + ' ms');
        var js = page.evaluate(function () {
            return document;
        });
        //console.log(js.all[0].outerHTML); 
        var fs = require('fs');
        try {
            fs.write(output, js.all[0].outerHTML, 'w');
        } catch(e) {
            console.log(e);
        }
    }
    phantom.exit();
});

рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рдпрд╣рд╛рдБ рд╕рдВрд▓рдЧреНрдирдХ рдореЗрдВ рд╣реИ:
https://groups.google.com/forum/#!topic/phantomjs/oqvK8mkk6aY

рдХрд┐рд╕реА рднреА рдорджрдж рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХреА рдЬрд╛рддреА рд╣реИред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореБрдЭреЗ рдЕрдм рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдкрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрдирдкреБрдЯ html рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ ISO-8859-1 рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рдерд╛ред
рдЪрд╛рд░рд╕реЗрдЯ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдЯрд╛ рдЬреЛрдбрд╝реЗрдВ = utf-8 рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

<html>
<head>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8">
 </head>
 <body>
    <p> The user interface for an activity is provided by a hierarchy of viewsтАФobjects derived from the <code>View</code> class. </p> 
 </body>
</html>

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореБрдЭреЗ рдЕрдм рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдкрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЗрдирдкреБрдЯ html рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ ISO-8859-1 рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рдерд╛ред
рдЪрд╛рд░рд╕реЗрдЯ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрдЯрд╛ рдЬреЛрдбрд╝реЗрдВ = utf-8 рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

<html>
<head>
 <meta http-equiv="content-type" content="text/html; charset=UTF-8">
 </head>
 <body>
    <p> The user interface for an activity is provided by a hierarchy of viewsтАФobjects derived from the <code>View</code> class. </p> 
 </body>
</html>

рддреБрдо рд╕рд╣реА рд╣реЛредрд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рд╡рд╣ html рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддрд╛ рдЬреЛ рджреВрд╕рд░реЗ рд▓реЛрдЧ рдореБрдЭреЗ рджреЗрддреЗ рд╣реИрдВредрдХреИрд╕реЗ рдХрд░реЗрдВ?

рдореЗрд░реЗ рдкрд╛рд╕ рдХреБрдЫ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдХреЛрдИ рд╣реЗрдбрд░ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ (рдореИрдВ рдЙрдиреНрд╣реЗрдВ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдРрдкреНрд╕ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ) ... рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЛ рдордЬрдмреВрд░ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕