導航:首頁 > 文檔加密 > centos教程pdf

centos教程pdf

發布時間:2024-07-16 05:20:52

A. 濡備綍浣跨敤Node.js鐖鍙栦換鎰忕綉欏佃祫婧愬苟杈撳嚭pdf鏂囦歡鍒版湰鍦



闇奼傦細


浣跨敤Node.js鐖鍙栫綉欏佃祫婧愶紝寮綆卞嵆鐢ㄧ殑閰嶇疆
灝嗙埇鍙栧埌鐨勭綉欏靛唴瀹逛互PDF鏍煎紡杈撳嚭
濡傛灉浣犳槸涓鍚嶆妧鏈浜哄憳錛岄偅涔堝彲浠ョ湅鎴戞帴涓嬫潵鐨勬枃絝狅紝鍚﹀垯錛岃風洿鎺ョЩ姝ュ埌鎴戠殑github浠撳簱錛岀洿鎺ョ湅鏂囨。浣跨敤鍗沖彲


浠撳簱鍦板潃:闄勫甫鏂囨。鍜屾簮鐮


鏈闇奼備嬌鐢ㄥ埌鐨勬妧鏈錛歂ode.js鍜宲uppeteer


puppeteer 瀹樼綉鍦板潃: puppeteer鍦板潃
Node.js瀹樼綉鍦板潃:閾炬帴鎻忚堪
Puppeteer鏄璋鋒瓕瀹樻柟鍑哄搧鐨勪竴涓閫氳繃DevTools鍗忚鎺у埗headless Chrome鐨凬ode搴撱傚彲浠ラ氳繃Puppeteer鐨勬彁渚涚殑api鐩存帴鎺у埗Chrome妯℃嫙澶ч儴鍒嗙敤鎴鋒搷浣滄潵榪涜孶I Test鎴栬呬綔涓虹埇鉶璁塊棶欏甸潰鏉ユ敹闆嗘暟鎹銆
鐜澧冨拰瀹夎
Puppeteer鏈韜渚濊禆6.4浠ヤ笂鐨凬ode錛屼絾鏄涓轟簡寮傛ヨ秴綰уソ鐢ㄧ殑async/await錛屾帹鑽愪嬌鐢7.6鐗堟湰浠ヤ笂鐨凬ode銆傚彟澶杊eadless Chrome鏈韜瀵規湇鍔″櫒渚濊禆鐨勫簱鐨勭増鏈瑕佹眰姣旇緝楂橈紝centos鏈嶅姟鍣ㄤ緷璧栧嚲紼沖畾錛寁6寰堥毦浣跨敤headless Chrome錛屾彁鍗囦緷璧栫増鏈鍙鑳藉嚭鐜板悇縐嶆湇鍔″櫒闂棰橈紙鍖呮嫭涓斾笉闄愪簬鏃犳硶浣跨敤ssh錛夛紝鏈濂戒嬌鐢ㄩ珮鐗堟湰鏈嶅姟鍣ㄣ傦紙寤鴻浣跨敤鏈鏂扮増鏈鐨凬ode.js錛
灝忚瘯鐗涘垁錛岀埇鍙栦含涓滆祫婧


const puppeteer = require('puppeteer'); // 寮曞叆渚濊禆
(async () => { //浣跨敤async鍑芥暟瀹岀編寮傛
const browser = await puppeteer.launch(); //鎵撳紑鏂扮殑嫻忚堝櫒
const page = await browser.newPage(); // 鎵撳紑鏂扮殑緗戦〉
await page.goto('https://www.jd.com/'); //鍓嶅線閲岄潰 'url' 鐨勭綉欏
const result = await page.evaluate(() => { //榪欎釜result鏁扮粍鍖呭惈鎵鏈夌殑鍥劇墖src鍦板潃
let arr = []; //榪欎釜綆澶村嚱鏁板唴閮ㄥ啓澶勭悊鐨勯昏緫
const imgs = document.querySelectorAll('img');
imgs.forEach(function (item) {
arr.push(item.src)
})
return arr
});
// '姝ゆ椂鐨剅esult灝辨槸寰楀埌鐨勭埇鉶鏁版嵁錛屽彲浠ラ氳繃'fs'妯″潡淇濆瓨'
})()
澶嶅埗榪囧幓 浣跨敤鍛戒護琛屽懡浠 ` node 鏂囦歡鍚 ` 灝卞彲浠ヨ繍琛岃幏鍙栫埇鉶鏁版嵁浜 榪欎釜 puppeteer 鐨勫寘 錛屽叾瀹炴槸鏇挎垜浠寮鍚浜嗗彟涓涓嫻忚堝櫒錛岄噸鏂板幓寮鍚緗戦〉錛岃幏鍙栧畠浠鐨勬暟鎹銆


涓婇潰鍙鐖鍙栦簡浜涓滈栭〉鐨勫浘鐗囧唴瀹癸紝鍋囪炬垜鐨勯渶奼傝繘涓姝ユ墿澶э紝闇瑕佺埇鍙栦含涓滈栭〉涓鐨勬墍鏈<a> 鏍囩懼瑰簲鐨勮煩杞緗戦〉涓鐨勬墍鏈 title鐨勬枃瀛楀唴瀹癸紝鏈鍚庢斁鍒頒竴涓鏁扮粍涓銆
鎴戜滑鐨刟sync鍑芥暟涓婇潰涓鍏卞垎浜嗕簲姝ワ紝 鍙鏈 puppeteer.launch() ,browser.newPage(), browser.close() 鏄鍥哄畾鐨勫啓娉曘
page.goto 鎸囧畾鎴戜滑鍘誨摢涓緗戦〉鐖鍙栨暟鎹錛屽彲浠ユ洿鎹㈠唴閮╱rl鍦板潃錛屼篃鍙浠ュ氭¤皟鐢ㄨ繖涓鏂規硶銆
page.evaluate 榪欎釜鍑芥暟錛屽唴閮ㄦ槸澶勭悊鎴戜滑榪涘叆鎯寵佺埇鍙栫綉欏電殑鏁版嵁閫昏緫
page.goto鍜宲age.evaluate涓や釜鏂規硶錛屽彲浠ュ湪async鍐呴儴璋冪敤澶氭★紝閭f剰鍛崇潃鎴戜滑鍙浠ュ厛榪涘叆浜涓滅綉欏碉紝澶勭悊閫昏緫鍚庯紝鍐嶆¤皟鐢╬age.goto榪欎釜鍑芥暟
娉ㄦ剰錛屼笂闈㈣繖涓鍒囬昏緫錛岄兘鏄痯uppeteer榪欎釜鍖呭府鎴戜滑鍦ㄧ湅涓嶈佺殑鍦版柟寮鍚浜嗗彟澶栦竴涓嫻忚堝櫒錛岀劧鍚庡勭悊閫昏緫錛屾墍浠ユ渶緇堣佽皟鐢╞rowser.close()鏂規硶鍏抽棴閭d釜嫻忚堝櫒銆

榪欐椂鍊欐垜浠瀵逛笂涓綃囩殑浠g爜榪涜屼紭鍖栵紝鐖鍙栧瑰簲鐨勮祫婧愩

const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
await page.goto('https://www.jd.com/');
const hrefArr = await page.evaluate(() => {
let arr = [];
const aNodes = document.querySelectorAll('.cate_menu_lk');
aNodes.forEach(function (item) {
arr.push(item.href)
})
return arr
});
let arr = [];
for (let i = 0; i < hrefArr.length; i++) {
const url = hrefArr[i];
console.log(url) //榪欓噷鍙浠ユ墦鍗
await page.goto(url);
const result = await page.evaluate(() => { //榪欎釜鏂規硶鍐呴儴console.log鏃犳晥
return $('title').text(); //榪斿洖姣忎釜鐣岄潰鐨則itle鏂囧瓧鍐呭
});
arr.push(result) //姣忔″驚鐜緇欐暟緇勪腑娣誨姞瀵瑰簲鐨勫
}
console.log(arr) //寰楀埌瀵瑰簲鐨勬暟鎹 鍙浠ラ氳繃Node.js鐨 fs 妯″潡淇濆瓨鍒版湰鍦
await browser.close()
})()
涓婇潰鏈夊ぉ鍧 page.evaluate鍑芥暟鍐呴儴鐨刢onsole.log涓嶈兘鎵撳嵃錛岃屼笖鍐呴儴涓嶈兘鑾峰彇澶栭儴鐨勫彉閲,鍙鑳絩eturn榪斿洖錛
浣跨敤鐨勯夋嫨鍣ㄥ繀欏誨厛鍘誨瑰簲鐣岄潰鐨勬帶鍒跺彴瀹為獙榪囪兘涓嶈兘閫夋嫨DOM鍐嶄嬌鐢錛屾瘮濡備含涓滄棤娉曚嬌鐢╭uerySelector銆傝繖閲岀敱浜
浜涓滅殑鍒嗙晫闈㈤兘浣跨敤浜唈Query錛屾墍浠ユ垜浠鍙浠ョ敤jQuery錛屾諱箣浠栦滑寮鍙戣兘鐢ㄧ殑閫夋嫨鍣錛屾垜浠閮藉彲浠ョ敤錛屽惁鍒欏氨涓嶅彲浠ャ


鎺ヤ笅鏉ユ垜浠鐩存帴鏉ョ埇鍙朜ode.js鐨勫畼緗戦栭〉鐒跺悗鐩存帴鐢熸垚PDF


鏃犺烘偍鏄鍚︿簡瑙Node.js鍜宲uppeteer鐨勭埇鉶鐨勪漢鍛橀兘鍙浠ユ搷浣滐紝璇鋒偍涓瀹氫竾鍒嗕粩緇嗛槄璇繪湰鏂囨。騫舵寜欏哄簭鎵ц屾瘡涓姝


鏈欏圭洰瀹炵幇闇奼傦細緇欐垜浠涓涓緗戦〉鍦板潃錛岀埇鍙栦粬鐨勭綉欏靛唴瀹癸紝鐒跺悗杈撳嚭鎴愭垜浠鎯寵佺殑PDF鏍煎紡鏂囨。錛岃鋒敞鎰忥紝鏄楂樿川閲忕殑PDF鏂囨。


絎涓姝ワ紝瀹夎匩ode.js ,鎺ㄨ崘http://nodejs.cn/download/錛孨ode.js鐨勪腑鏂囧畼緗戜笅杞藉瑰簲鐨勬搷浣滅郴緇熷寘

絎浜屾ワ紝鍦ㄤ笅杞藉畨瑁呭畬浜哊ode.js鍚庯紝 鍚鍔╳indows鍛戒護琛屽伐鍏(windows涓嬪惎鍔ㄧ郴緇熸悳緔㈠姛鑳斤紝杈撳叆cmd錛屽洖杞︼紝灝卞嚭鏉ヤ簡)

絎涓夋 闇瑕佹煡鐪嬬幆澧冨彉閲忔槸鍚﹀凡緇忚嚜鍔ㄩ厤緗,鍦ㄥ懡浠よ屽伐鍏蜂腑杈撳叆 node -v錛屽傛灉鍑虹幇 v10. ***瀛楁碉紝鍒欒存槑鎴愬姛瀹夎匩ode.js

絎鍥涙 濡傛灉鎮ㄥ湪絎涓夋ュ彂鐜拌緭鍏node -v榪樻槸娌℃湁鍑虹幇 瀵瑰簲鐨勫瓧孌碉紝閭d箞璇鋒偍閲嶅惎鐢佃剳鍗沖彲

絎浜旀 鎵撳紑鏈欏圭洰鏂囦歡澶癸紝鎵撳紑鍛戒護琛屽伐鍏鳳紙windows緋葷粺涓鐩存帴鍦ㄦ枃浠剁殑url鍦板潃鏍忚緭鍏cmd灝卞彲浠ユ墦寮浜嗭級錛岃緭鍏 npm i cnpm nodemon -g

絎鍏姝 涓嬭澆puppeteer鐖鉶鍖咃紝鍦ㄥ畬鎴愮浜旀ュ悗錛屼嬌鐢╟npm i puppeteer --save 鍛戒護 鍗沖彲涓嬭澆

絎涓冩 瀹屾垚絎鍏姝ヤ笅杞藉悗錛屾墦寮鏈欏圭洰鐨剈rl.js錛屽皢鎮ㄩ渶瑕佺埇鉶鐖鍙栫殑緗戦〉鍦板潃鏇挎崲涓婂幓(榛樿ゆ槸http://nodejs.cn/)

絎鍏姝 鍦ㄥ懡浠よ屼腑杈撳叆 nodemon index.js 鍗沖彲鐖鍙栧瑰簲鐨勫唴瀹癸紝騫朵笖鑷鍔ㄨ緭鍑哄埌褰撳墠鏂囦歡澶逛笅闈㈢殑index.pdf鏂囦歡涓
TIPS: 鏈欏圭洰璁捐℃濇兂灝辨槸涓涓緗戦〉涓涓狿DF鏂囦歡錛屾墍浠ユ瘡嬈$埇鍙栦竴涓鍗曠嫭欏甸潰鍚庯紝璇鋒妸index.pdf鎷瘋礉鍑哄幓錛岀劧鍚庣戶緇鏇存崲url鍦板潃錛岀戶緇鐖鍙栵紝鐢熸垚鏂扮殑PDF鏂囦歡錛屽綋鐒訛紝鎮ㄤ篃鍙浠ラ氳繃寰鐜緙栬瘧絳夋柟寮忓幓涓嬈℃х埇鍙栧氫釜緗戦〉鐢熸垚澶氫釜PDF鏂囦歡銆


瀵瑰簲鍍忎含涓滈栭〉榪欐牱鐨勫紑鍚浜嗗浘鐗囨噿鍔犺澆鐨勭綉欏碉紝鐖鍙栧埌鐨勯儴鍒嗗唴瀹規槸loading鐘舵佺殑鍐呭癸紝瀵逛簬鏈変竴浜涘弽鐖鉶鏈哄埗鐨勭綉欏碉紝鐖鉶涔熶細鍑虹幇闂棰橈紝浣嗘槸緇濆ぇ澶氭暟緗戠珯閮芥槸鍙浠ョ殑

const puppeteer = require('puppeteer');
const url = require('./url');
(async () => {
const browser = await puppeteer.launch({ headless: true })
const page = await browser.newPage()
//閫夋嫨瑕佹墦寮鐨勭綉欏
await page.goto(url, { waitUntil: 'networkidle0' })
//閫夋嫨浣犺佽緭鍑虹殑閭d釜PDF鏂囦歡璺寰勶紝鎶婄埇鍙栧埌鐨勫唴瀹硅緭鍑哄埌PDF涓錛屽繀欏繪槸瀛樺湪鐨凱DF錛屽彲浠ユ槸絀哄唴瀹癸紝濡傛灉涓嶆槸絀虹殑鍐呭筆DF錛岄偅涔堜細瑕嗙洊鍐呭
let pdfFilePath = './index.pdf'
//鏍規嵁浣犵殑閰嶇疆閫夐」錛屾垜浠榪欓噷閫夋嫨A4綰哥殑瑙勬牸杈撳嚭PDF錛屾柟渚挎墦鍗
await page.pdf({
path: pdfFilePath,
format: 'A4',
scale: 1,
printBackground: true,
landscape: false,
displayHeaderFooter: false
});
await browser.close()
})()
鏂囦歡瑙f瀯璁捐




鏁版嵁鍦ㄨ繖涓鏃朵唬闈炲父鐝嶈吹錛屾寜鐓х綉欏電殑璁捐¢昏緫錛岄夊畾鐗瑰畾鐨刪ref鐨勫湴鍧錛屽彲浠ュ厛鐩存帴鑾峰彇瀵瑰簲鐨勮祫婧愶紝涔熷彲浠ラ氳繃鍐嶆′嬌鐢 page.goto鏂規硶榪涘叆錛屽啀璋冪敤 page.evaluate() 澶勭悊閫昏緫錛屾垨鑰呰緭鍑哄瑰簲鐨凱DF鏂囦歡錛屽綋鐒朵篃鍙浠ヤ竴鍙f皵杈撳嚭澶氫釜PDF鏂囦歡~


榪欓噷灝變笉鍋氳繃澶氫粙緇嶄簡錛屾瘯絝 Node.js 鏄鍙浠ヤ笂澶╃殑錛屾垨璁告湭鏉ュ畠鐪熺殑浠涔堥兘鑳藉仛銆傝繖涔堜紭璐ㄧ畝鐭鐨勬暀紼嬶紝璇鋒敹鈃
鎴栬呰漿鍙戠粰鎮ㄧ殑鏈嬪弸錛岃阿璋銆

B. 在Centos7.5上安裝wkhtmltopdf、中文字體及相關配置

上傳字體文件到/usr/share/fonts/chinese,
然後執行字體緩存更新

fc-list :lang=zh-cn

發現不能正常解析中文字體名

vim /etc/fonts/fonts.conf
在<fontconfig></fontconfig>配置節之間增加以下match標簽,增加中文字體解析規則。

配置後,再次檢查解析情況

C. ITextRenderer 創建PDF文件,Windows 下Tomcat正常創建,CentOS下的Tomcat就無法正常創建,是什麼原因

請確認文件路徑是否正確

D. 如何在centos中使用wkhtmltopdf

你好, 1、首先要用yum install mysql命令進行安裝MySQL客戶端;使用yum install mysql-server命令安裝MySQL 服務。 2、運行命令chkconfig --levels 235 mysqld on使MySQL服務可以自動啟動,並使用命令/etc/init.d/mysqld start立刻啟動MySQL服務 。 3、接著設置MySQL的root密碼,運行命令/usr/bin/mysqladmin -u root password 'new-password',其中』new-password』是新設的密碼,如123456 。 4、安裝完成。

E. centos中怎麼看pdf

adobe reader,有linux版本,官方站點可下載。

F. java學習路線

1、java基本語法(1 編寫 HelloWorld、2 常量、3 變數、4 數據類型、5 運算符、6 方法、7 流程式控制制語句、8 IDEA使用:目前企業使用最多開發工具、9 數組)
2、面向對象(1 類、2 對象、3 封裝、繼承、多態、4 構造器、5super、this、6 介面、抽象類、7 許可權修飾符、8 內部類、9 Random、ArrayList、String、Arrays、Math)
3、API(常用API:1 Date、2 DateFormat、3 Calendar、4 System、5 StringBuilde)
4、集合(1 Collection、2 泛型、3 List、4 Set、5 Collections、6 Map、7 HashMap)
5、異常(1 異常體系、2 異常分類、3 聲明拋出捕獲異常、4 自定義異常)
6、多線程(1 線程概念、2 線程同步、3 Lock、4 線程生命周期、5 線程池)
7、Lambda表達式(1 函數式思想概述、2 Lambda標准格式、3 Lambda語法與注意事項)
8、IO流(1 文件、2 位元組流、字元流、3 轉換流、高效流)
9、網路編程(1 網路編程三要素、2 Socket原理機制、3 UDP傳輸、4 TCP傳輸)
10、資料庫(1 mysql、2 jdbc、3 連接池、4 JdbcTemplate )
11、前端技術(1 html5、2 css、3 javascript、4 bootstrap)
12、linux(1 linux安裝、2 目錄操作、3 文件操作、4 網路操作等)
13、nginx( nginx安裝、配置、部署)
14、xml與(1 xml基本語法、2 約束)
15、jsonp( 1 jsoup概述、2 jsoup作用使用、3 xpath)
16、Servlet(1 tomcat、2 request、response、3 cookie、session、4 jsp、el、jstl、Filter)
17、web非同步開發(1 jquery3、2 ajax、3 json)
18、redis(1 nosql介紹、2 redis數據類型、3 常用命令、4 jedis)
19、maven(1 maven概念與作用、2 idea集成maven、3 maven常用命令、4 依賴管理)
20、spring(1 spring體系結構、2 spring配置、3 bean管理、 4 IOC/DI、AOP、5 事務管理、6 spring5新特性 )

閱讀全文

與centos教程pdf相關的資料

熱點內容
共享文件夾不顯示任務欄 瀏覽:251
唱歌給黨聽是哪個app的活動 瀏覽:499
bp演算法源代碼 瀏覽:648
發票伺服器怎麼選 瀏覽:387
哪個app陪伴運動 瀏覽:882
學編程每天六點起床 瀏覽:954
烏鴉搜索演算法復現 瀏覽:77
android3d切換 瀏覽:751
資源管理器選定文件夾 瀏覽:989
分數公約數的演算法 瀏覽:589
yii2引入php文件 瀏覽:564
華為p20方舟編譯器評測 瀏覽:187
pntp伺服器是什麼 瀏覽:654
程序員培訓多長時間 瀏覽:557
求aaa的和python 瀏覽:194
python因子分析代碼 瀏覽:647
python啟動時提示沒有入口 瀏覽:681
linux中oracle監聽 瀏覽:622
程序員高價值朋友圈 瀏覽:489
雲伺服器做淘寶店 瀏覽:805