Membuat GoogleBot Web Crawler NodeJS di FreeBSD

· 2 min read

Membuat proyek web spider dengan pustaka yang tepat seperti NodeJs itu mudah. \u200b\u200bDi sini Anda akan mempelajari cara membuat perayap web JavaScript deng

Scraper web dan mesin pencari mengandalkan perayapan web untuk mengekstrak informasi dari web. Dengan perayapan web, URL web akan segera muncul di mesin pencari Google. Akibatnya, perayap web menjadi semakin populer.

Membuat proyek web spider dengan pustaka yang tepat seperti NodeJs itu mudah. ​​Di sini Anda akan mempelajari cara membuat perayap web JavaScript dengan pustaka perayapan web paling populer, yaitu NodeJS.

Dalam artikel ini kita akan membuat scraper web dengan NodeJs, kita akan menunjukkan cara membuat perayap web di Node.js untuk mengikis situs web dan menyimpan data yang diambil dalam basis data. Perayap web kita akan melakukan pengikisan web dan melakukan transfer data menggunakan utas pekerja Node.js.

Manfaat menggunakan perayap web Node.JS.
  • Perayapan web dengan perayap node.
  • Menggunakan JavaScript sehingga Node.js ideal untuk pengikisan web.
  • Pengikisan web dengan utas pekerja di Node.js.
  • Menerapkan perayap dasar dengan Cheerio dan Axios.
  • Praktik terbaik dan teknik peningkatan perayap.
  • Otomatisasi peramban dan proksi untuk penghindaran.

1. Perayapan Web di Node.js

Selain mengindeks web di seluruh dunia, crawling juga dapat mengumpulkan data dari situs web. Ini dikenal sebagai web scraping. Proses web scraping dapat sangat membebani CPU komputer, tergantung pada struktur situs dan kompleksitas data yang diekstraksi. Anda dapat menggunakan jumlah thread yang digunakan untuk mengoptimalkan operasi intensif CPU yang diperlukan untuk melakukan web scraping di Node.js.

Dengan dukungan Java, NodeJs banyak digunakan karena merupakan platform yang ringan, berkinerja tinggi, efisien, dan mudah dikonfigurasi.

Event loop dalam JavaScript merupakan komponen penting yang memungkinkan Node.js untuk melakukan tugas web crawling skala besar secara efisien. Bahasa Javascript dapat melakukan satu hal kapan saja dibandingkan dengan bahasa lain seperti C atau C++ yang menggunakan beberapa thread untuk melakukan banyak hal secara bersamaan.

Hal yang mendasarinya ada pada bahasa Javascript, di mana ia tidak dapat menjalankan berbagai hal secara paralel tetapi dapat menjalankan berbagai hal secara bersamaan. Javascript tidak dapat memproses semua pekerjaan web crawling secara bersamaan.



node js app




JavaScript, dan NodeJs, dalam menjalankan tugas web scraping, ini berarti Node.js dapat memulai tugas (seperti membuat permintaan HTTP) dan terus mengeksekusi kode lain tanpa menunggu tugas selesai. Sifat NodeJS yang tidak memblokir memungkinkan Node.js mengelola beberapa operasi secara bersamaan secara efisien.

Dalam menjalankan tugas web crawling, Node.js menggunakan arsitektur berbasis peristiwa. Ketika operasi asinkron, seperti permintaan jaringan atau pembacaan file, selesai, ia memicu suatu peristiwa. Loop peristiwa mendengarkan peristiwa ini dan mengirimkan fungsi panggilan balik untuk menanganinya. Model berbasis peristiwa ini memastikan bahwa Node.js dapat mengelola beberapa tugas secara bersamaan tanpa pemblokiran apa pun.

2. Menginstal NodeJS di FreeBSD

Node.js tidak memerlukan perangkat keras yang mewah dan mahal untuk menjalankannya, sebagian besar komputer di era ini dapat menjalankan NodeJs secara efisien. Bahkan komputer terkecil seperti BeagleBone atau Arduino YÚN dapat menjalankan NodeJs. Namun, banyak hal masih bergantung pada perangkat lunak memori apa yang Anda jalankan pada sistem yang sama.

Setiap sistem operasi memiliki metode dan cara yang berbeda untuk instalasi NodeJs. File pengaturan inti berbeda untuk setiap sistem operasi. Namun, pembuat Node.js telah berhati-hati untuk menyediakan file yang diperlukan untuk setiap sistem operasi.

Pada sistem FreeBSD, NodeJS dijalankan oleh Node Package Manager. Jadi Anda harus menginstal NPM dan Node untuk dapat menjalankan NodeJS di FreeBSD. Berikut ini adalah panduan untuk menginstal NodeJS di FreeBSD.
root@ns7:~ # pkg install brotli && pkg install icu && pkg install libuv
Setelah itu Anda jalankan perintah berikut.
root@ns7:~ # cd /usr/ports/www/node
root@ns7:/usr/ports/www/node # make install clean
Paket terakhir yang harus Anda instal adalah Node Package Manager (NPM) dengan Node.js. NPM adalah pustaka sumber terbuka dari paket Node.js. Untuk menginstal NPM di FreeBSD, gunakan perintah berikut:
root@ns7:~ # cd /usr/ports/www/npm-node18
root@ns7:/usr/ports/www/npm-node18 # make install clean
Anda dapat membaca penjelasan lengkap tentang cara menginstal NodeJS di artikel sebelumnya.



3. Perayap Web dengan NodeJS

Aplikasi CLI ini merayapi URL dasar yang disediakan pengguna, serta semua subhalamannya. Perayap web NodeJS kemudian membagi tautan menjadi tautan internal dan eksternal. Tautan internal adalah tautan yang mengarah ke halaman lain di domain yang sama. Tautan eksternal adalah tautan yang mengarah ke domain lain di situs web Anda. Untuk setiap tautan, ia menghitung jumlah kemunculan dan menampilkan hasil akhir dalam urutan menurun. Output dibagi menjadi tautan internal dan eksternal dan dicetak ke terminal, tempat output disimpan dalam file .csv.

Untuk memulai perayap web NodeJS, kami telah menyediakan skrip di server Github. Klon repositori ke komputer Anda dan jalankan perintah berikut di direktori tempat Anda meletakkan klon dari Github.
root@ns7:~ # cd /var
root@ns7:/var # git clone https://github.com/unixwinbsd/WebCrawler-NodeJS-FreeBSD.git
root@ns7:/var # cd WebCrawler-NodeJS-FreeBSD
root@ns7:/var/WebCrawler-NodeJS-FreeBSD #
Gunakan perintah "ci" untuk memulai instalasi.
root@ns7:/var/WebCrawler-NodeJS-FreeBSD # npm ci
Gunakan perintah "init" untuk menginisialisasi aplikasi.
root@ns7:/var/WebCrawler-NodeJS-FreeBSD # npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.

See `npm help init` for definitive documentation on these fields
and exactly what they do.

Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.

Press ^C at any time to quit.
package name: (web-crawler_js)
version: (1.0.0)
keywords:
author:
license: (ISC)
About to write to /var/WebCrawler-NodeJS-FreeBSD/package.json:

{
  "name": "web-crawler_js",
  "version": "1.0.0",
  "description": "You must have Node.js installed on your computer. This project was developed using Node.js v18.7.0",
  "main": "index.js",
  "scripts": {
    "test": "jest",
    "start": "node index.js"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "jest": "^29.3.1"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/Sunkio/web-crawler_js.git"
  },
  "bugs": {
    "url": "https://github.com/Sunkio/web-crawler_js/issues"
  },
  "homepage": "https://github.com/Sunkio/web-crawler_js#readme",
  "dependencies": {
    "jsdom": "^21.1.2",
    "json2csv": "^6.0.0-alpha.2"
  }
}


Is this OK? (yes) yes
Pada perintah "npm init", ada beberapa opsi yang harus Anda isi, cukup tekan enter, untuk mempercepat proses. Terakhir, ketik "yes" dan lanjutkan dengan tombol enter untuk mengakhiri.

Jalankan perintah berikut untuk melanjutkan instalasi.
root@ns7:/var/WebCrawler-NodeJS-FreeBSD # npm install jest --save-dev
root@ns7:/var/WebCrawler-NodeJS-FreeBSD # npm install jsdom
root@ns7:/var/WebCrawler-NodeJS-FreeBSD # npm install json2csv
Jalankan perintah “npm start” untuk memulai perayap web NodeJS.
root@ns7:/var/WebCrawler-NodeJS-FreeBSD # npm start

> web-crawler_js@1.0.0 start
> node index.js

Which URL do you want to crawl?https://www.unixwinbsd.site
Kemudian ikuti saja petunjuknya. Program ini akan meminta URL yang ingin Anda telusuri. Masukkan URL yang ingin Anda telusuri. Program ini kemudian akan menelusuri URL dan semua subhalamannya. Hasilnya kemudian akan ditampilkan di terminal dan diekspor ke file .csv. File tersebut akan disimpan di direktori laporan.


NPM Start


Dalam tutorial ini, kita telah mempelajari cara membuat perayap web yang mengambil data dari situs web Anda dan menyimpannya ke dalam basis data. Lakukan perayapan web setiap hari dan setiap waktu, sehingga URL halaman situs web Anda cepat terindeks dan muncul di mesin pencari.
Subscribe on LinkedIn Membuat GoogleBot Web Crawler NodeJS di FreeBSD

Enclosures Link: Membuat GoogleBot Web Crawler NodeJS di FreeBSD

Silahkan Berkomentar, Kakak...! Bunda...!

Posting Komentar