PhantomJS একটি হেডলেস ওয়েব কিপার এবং ব্রাউজার অটোমেশন টুল যা JavaScript এবং WebKit প্রযুক্তি ব্যবহার করে তৈরি করা হয়েছে। এটি বিশেষভাবে ওয়েব পেজ রেন্ডারিং এবং স্ক্রিনশট নেওয়া, ওয়েব স্ক্র্যাপিং, পেজ টেস্টিং এবং অন্যান্য অটোমেশন কাজের জন্য ব্যবহৃত হয়। PhantomJS হেডলেস ব্রাউজার হওয়ায়, এটি গ্রাফিকাল ইউজার ইন্টারফেস (GUI) ছাড়াই রান করতে পারে এবং সাধারণভাবে টেস্টিং এবং স্ক্রিপ্টিংয়ের জন্য ব্যবহৃত হয়।
এখন, PhantomJS এর প্রথম স্ক্রিপ্ট তৈরি করার জন্য আপনার যা যা প্রয়োজন:
PhantomJS এর প্রথম স্ক্রিপ্ট তৈরি করা
PhantomJS ইনস্টল করা:
- প্রথমে, আপনাকে PhantomJS ইনস্টল করতে হবে। এটি আপনার সিস্টেমে Node.js বা অন্যান্য প্যাকেজ ম্যানেজারের মাধ্যমে ইনস্টল করা যাবে। এখানে Homebrew (MacOS) বা npm (Node.js) ব্যবহারের উদাহরণ দেওয়া হল।
MacOS এ Homebrew দিয়ে ইনস্টল:
brew install phantomjsWindows বা Linux এ PhantomJS ডাউনলোড করুন:
- PhantomJS এর অফিসিয়াল সাইটে গিয়ে আপনার সিস্টেমের জন্য ভার্সন ডাউনলোড করুন: PhantomJS Download
- ফাইল তৈরি করা: এখন, PhantomJS স্ক্রিপ্ট তৈরি করতে আপনার একটি নতুন ফাইল তৈরি করতে হবে, যেমন
first_script.js. - PhantomJS স্ক্রিপ্ট উদাহরণ:
// first_script.js
// Import PhantomJS module
var webpage = require('webpage');
// Create a new web page
var page = webpage.create();
// Open a URL
page.open('http://example.com', function(status) {
if (status === "success") {
// If the page loads successfully, capture a screenshot
console.log('Page Loaded Successfully!');
page.render('example_screenshot.png');
} else {
console.log('Page failed to load.');
}
// Exit PhantomJS after the task is done
phantom.exit();
});
Explanation of the Script:
- Require PhantomJS Webpage Module:
require('webpage')PhantomJS এ ওয়েব পেজ তৈরি এবং নিয়ন্ত্রণ করতে ব্যবহৃত হয়। এটি PhantomJS এর প্রধান মডিউল যা পেজ লোড করা, স্ক্রিনশট নেওয়া, পেজের কন্টেন্ট ক্যাপচার করা ইত্যাদি কাজ করে।
- Create a WebPage Instance:
var page = webpage.create(): এই লাইনটি একটি নতুন ওয়েব পেজ তৈরি করে। এরপর এই পেজটি আপনি স্ক্রিপ্টের মাধ্যমে নিয়ন্ত্রণ করতে পারবেন।
- Open a URL:
page.open('http://example.com', function(status) {...}): এই ফাংশনটি ব্যবহার করে আপনি একটি URL ওপেন করতে পারেন। এর মাধ্যমে পেজ লোডের স্ট্যাটাস (যেমন, সফল বা ব্যর্থ) পাওয়া যায়।
- Capture Screenshot:
page.render('example_screenshot.png'): পেজটি লোড হওয়ার পর, এটি একটি স্ক্রিনশট ধারণ করে এবং example_screenshot.png ফাইলে সংরক্ষণ করে।
- Exit PhantomJS:
phantom.exit(): স্ক্রিপ্ট শেষ হলে PhantomJS প্রক্রিয়া বন্ধ করতে এই ফাংশনটি ব্যবহার করা হয়।
4. PhantomJS স্ক্রিপ্ট চালানো:
- PhantomJS স্ক্রিপ্ট চালানোর জন্য, টার্মিনাল বা কমান্ড প্রম্পট খুলে এই কমান্ডটি রান করুন:
phantomjs first_script.js
এটি চালানোর পর, example_screenshot.png নামে একটি স্ক্রিনশট তৈরি হবে যেটি পেজের রেন্ডার করা দৃশ্য ধারণ করবে।
PhantomJS এর অন্যান্য ফিচার:
PhantomJS এর সাথে আরও অনেক কাজ করা যেতে পারে, যেমন:
- Page Scraping (Web Scraping): ওয়েব পেজ থেকে তথ্য সংগ্রহ করা।
- Automation of Web Tests: ওয়েব অ্যাপ্লিকেশন এর UI বা ফাংশনাল টেস্ট অটোমেট করা।
- Generate PDF files: ওয়েব পেজের স্ক্রিনশট বা রেন্ডার করা কন্টেন্ট PDF ফাইলে রূপান্তর করা।
PhantomJS একটি শক্তিশালী টুল যা হেডলেস ব্রাউজার হিসেবে বিভিন্ন ধরনের অটোমেশন কাজের জন্য ব্যবহৃত হয়। এর সাহায্যে আপনি স্ক্রিনশট নিতে পারেন, পেজ লোড করতে পারেন, এবং ওয়েব টেস্টিং বা স্ক্র্যাপিং করতে পারেন। প্রথম PhantomJS স্ক্রিপ্ট তৈরি করার মাধ্যমে আপনি এর মূল ফিচারগুলো বুঝতে শুরু করতে পারবেন এবং এটি ওয়েব ডেভেলপমেন্ট ও টেস্টিংয়ে অত্যন্ত সহায়ক হতে পারে।
Read more