xdotool, ydotool, dotool କିମ୍ବା Playwright: କେଉଁ Automation ଟୁଲ୍ ଏକ Headless ସର୍ଭର ପାଇଁ ଉପଯୁକ୍ତ?

xdotool, ydotool, dotool କିମ୍ବା Playwright: କେଉଁ Automation ଟୁଲ୍ ଏକ Headless ସର୍ଭର ପାଇଁ ଉପଯୁକ୍ତ?

ଏକ ଦୈନନ୍ଦିନ ସୋସିଆଲ୍-ପୋଷ୍ଟିଂ କାର୍ଯ୍ୟରୁ ଏକ ବାସ୍ତବ ତୁଳନା, ମାପ କରାଯାଇଥିବା CPU ଏବଂ memory ସଂଖ୍ୟା ସହିତ

ଯଦି ଆପଣଙ୍କୁ କେବେ ଏକ Linux ମେସିନ୍‌ରେ ଆପଣଙ୍କ ପାଇଁ କ୍ଲିକ୍ କରିବା, ଟାଇପ୍ କରିବା ଏବଂ ପୋଷ୍ଟ କରିବା ନିମନ୍ତେ ଏକ ସ୍କ୍ରିପ୍ଟର ଆବଶ୍ୟକତା ପଡ଼ିଛି, ତେବେ ଆପଣ ଚାରୋଟି ନାମ ଦେଖିଥିବେ: xdotool, ydotool, dotool ଏବଂ Playwright। ସେଗୁଡ଼ିକ ଦୂରରୁ ସମାନ ଦେଖାଯାଆନ୍ତି, କିନ୍ତୁ ସେମାନଙ୍କ କାର୍ଯ୍ୟ କରିବାର ଉପାୟ ବହୁତ ଭିନ୍ନ। ଆଜି, October 20, 2026 ରେ, ଏହି ପ୍ରଶ୍ନ ପୂର୍ବ ଅପେକ୍ଷା ଅଧିକ ଗୁରୁତ୍ୱପୂର୍ଣ୍ଣ, କାରଣ ଅନେକ Linux ଡେସ୍କଟପ୍ ଏବେ ପୁରୁଣା X11 ସିଷ୍ଟମ୍ ବଦଳରେ Wayland ଚଲାଉଛନ୍ତି, ଏବଂ ଏହା ନିର୍ଦ୍ଧାରଣ କରେ ଯେ କେଉଁ ଟୁଲ୍ ଆଦୌ କାମ କରିବ।

ଏହି ଆର୍ଟିକିଲ୍‌ରେ ଏକ ଛୋଟ କମ୍ପାନୀର ଦୈନନ୍ଦିନ ସୋସିଆଲ୍-ମିଡିଆ ପୋଷ୍ଟିଂ କାର୍ଯ୍ୟକୁ ଅଟୋମେଟ୍ କରିବା ସମୟରେ ଆମେ ଯାହା ଶିଖିଲୁ ତାହା ବର୍ଣ୍ଣନା କରାଯାଇଛି। ଏହି କାର୍ଯ୍ୟଟି ଏକ ପ୍ରାଇଭେଟ୍, ଅଦୃଶ୍ୟ ସ୍କ୍ରିନ୍ ଥିବା ସର୍ଭରରେ ଚାଲେ, ଏବଂ ଏହା ପ୍ରତିଦିନ ଅନେକ ସାଇଟ୍‌ରେ ଗୋଟିଏ ଆର୍ଟିକିଲ୍ ପୋଷ୍ଟ କରେ। ଆମେ ଏହି ଟୁଲ୍‌ଗୁଡ଼ିକ ମଧ୍ୟରୁ ବାଛିଥିଲୁ, ଗୋଟିଏ ଷ୍ଟେପ୍ ଗୋଟିଏ ଟୁଲ୍‌ରୁ ଅନ୍ୟ ଟୁଲ୍‌କୁ ବଦଳାଇଥିଲୁ, ଏବଂ ଏହାର ଖର୍ଚ୍ଚ ମାପିଥିଲୁ।

ସଂକ୍ଷିପ୍ତ ଉତ୍ତର

ଏକ ଅଦୃଶ୍ୟ X11 ସ୍କ୍ରିନ୍‌ରେ କାର୍ଯ୍ୟ ପାଇଁ, ବ୍ୟବହାର କରନ୍ତୁ Playwright ଯେତେବେଳେ ସାଇଟ୍ ଏକ ସାଧାରଣ ୱେବ୍ ପେଜ୍ ଅଟେ, ଏବଂ ରଖନ୍ତୁ xdotool ଏକ backup ଭାବରେ। ydotool ଏବଂ dotool ଏକ ଭିନ୍ନ ସମସ୍ୟା ପାଇଁ ନିର୍ମିତ। CPU ଏବଂ memory କ୍ଷେତ୍ରରେ, Playwright ଏବଂ xdotool ମଧ୍ୟରେ ପାର୍ଥକ୍ୟ ବହୁତ କମ୍। ବିଶ୍ୱସନୀୟତା ଅଧିକ ଗୁରୁତ୍ୱପୂର୍ଣ୍ଣ।

ପ୍ରତ୍ୟେକ ଟୁଲ୍ ପ୍ରକୃତରେ କ’ଣ କରେ

xdotool ଏକ X11 ଡିସପ୍ଲେ ସହିତ କଥାବାର୍ତ୍ତା କରେ। ଏହା ମାଉସ୍ ଘୁଞ୍ଚାଇ ପାରିବ, କ୍ଲିକ୍ କରିପାରିବ, ଟାଇପ୍ କରିପାରିବ, କୀ’ ଦବାଇ ପାରିବ, ଏବଂ ନାମ ଅନୁସାରେ ୱିଣ୍ଡୋ ଖୋଜି ପାରିବ। ଆପଣ ଏହାକୁ ଯେଉଁ ଡିସପ୍ଲେ ନିର୍ଦ୍ଦେଶ କରନ୍ତି ଏହା କେବଳ ସେହିଠାକୁ ହିଁ ଇନପୁଟ୍ ପଠାଏ। ଏହା ସ୍କ୍ରିନ୍ ଦେଖିପାରିବ ନାହିଁ, ତେଣୁ ଯଦି ଆପଣଙ୍କୁ ଜାଣିବା ଆବଶ୍ୟକ ହୁଏ ଯେ ସ୍କ୍ରିନ୍‌ରେ କ’ଣ ଅଛି, ତେବେ ଆପଣଙ୍କୁ ନିଜେ ଏକ ସ୍କ୍ରିନସଟ୍ ନେବାକୁ ପଡ଼ିବ।

ydotool ଏବଂ dotool ଅଧିକ ନିମ୍ନ ସ୍ତରରେ କାମ କରନ୍ତି। ସେମାନେ କର୍ଣ୍ଣେଲ୍‌ର ଇନପୁଟ୍ ଡିଭାଇସ୍ (ଯାହାକୁ uinput କୁହାଯାଏ) ରେ ଲେଖନ୍ତି, ତେଣୁ ସେମାନେ ସମଗ୍ର ମେସିନ୍‌ରେ ସଂଯୁକ୍ତ ଏକ ପ୍ରକୃତ କୀବୋର୍ଡ୍ ଏବଂ ମାଉସ୍ ଭଳି ଆଚରଣ କରନ୍ତି। ସେଥିପାଇଁ ସେମାନେ Wayland ରେ କାମ କରନ୍ତି, ଯେଉଁଠାରେ xdotool କରେ ନାହିଁ। ଏହାର ମୂଲ୍ୟ ହେଉଛି ଯେ ସେମାନେ କୌଣସି ୱିଣ୍ଡୋ ବାଛି ପାରିବେ ନାହିଁ ଏବଂ ପ୍ରକୃତ ଡେସ୍କଟପ୍‌ରେ ଯାହା ଉପରେ ଫୋକସ୍ ଥାଏ ତାହାକୁ ଇନପୁଟ୍ ପଠାନ୍ତି। ସେମାନଙ୍କୁ ସାଧାରଣତଃ ଇନପୁଟ୍ ଡିଭାଇସ୍ ବ୍ୟବହାର କରିବା ପାଇଁ ଅତିରିକ୍ତ ଅନୁମତି ମଧ୍ୟ ଆବଶ୍ୟକ ହୁଏ।

Playwright ଭିନ୍ନ ଧରଣର ଅଟେ। ଏହା ମାଉସ୍ କିମ୍ବା କୀବୋର୍ଡ୍‌ର ନକଲ କରେ ନାହିଁ। ଏହା ବ୍ରାଉଜର୍ ସହିତ ସଂଯୋଗ ହୁଏ ଏବଂ ନିଜେ ୱେବ୍ ପେଜ୍‌କୁ ନିୟନ୍ତ୍ରଣ କରେ। ଏହା ଏକ ବଟନ୍ ଦେଖାଯିବା ପର୍ଯ୍ୟନ୍ତ ଅପେକ୍ଷା କରିପାରିବ, ଏକ ବକ୍ସରେ ଥିବା ଟେକ୍ସଟ୍ ପଢ଼ିପାରିବ, ଏବଂ କୌଣସି ମେସେଜ୍ ଆସିଲା କି ନାହିଁ ତାହା ଆପଣଙ୍କୁ ଜଣାଇପାରିବ।

ସ୍କ୍ରିନ୍ ପ୍ରକାର କାହିଁକି ଏହାର ଅଧିକାଂଶ ନିର୍ଦ୍ଧାରଣ କରେ

ଆମର କାର୍ଯ୍ୟ ଏକ ପ୍ରାଇଭେଟ୍ ଭର୍ଚୁଆଲ୍ ଡିସପ୍ଲେରେ ଚାଲେ, ଯାହା ଏକ ସ୍କ୍ରିନ୍ ଯାହା କେବଳ ମେମୋରୀରେ ଉପସ୍ଥିତ ଥାଏ, ତେଣୁ କେହି ଏହାକୁ ଦେଖିପାରିବେ ନାହିଁ। ଏହା X11, ତେଣୁ xdotool କାମ କରେ। ydotool ଏବଂ dotool ସେମାନଙ୍କ ଇନପୁଟ୍ ସମଗ୍ର ମେସିନ୍‌କୁ ପଠାଇବେ, ଯାହା ପ୍ରକୃତ କନ୍‌ସୋଲ୍ ଡେସ୍କଟପ୍ ଉପରେ ପଡ଼ିପାରେ। ଆମ କ୍ଷେତ୍ରରେ ସେହି ଡେସ୍କଟପ୍ ଲକ୍ ରହିବା ଆବଶ୍ୟକ, କାରଣ ଅନ୍ୟ ଜଣେ ଆଡମିନିଷ୍ଟ୍ରେଟର୍ ଏହାର ସ୍କ୍ରିନ୍ ଦେଖିପାରିବେ। ତେଣୁ ସେହି ଦୁଇଟିକୁ ସୁରକ୍ଷା ପାଇଁ ବାଦ୍ ଦିଆଯାଇଥିଲା, ସ୍ପୀଡ୍ ପାଇଁ ନୁହେଁ।

ଆମେ ଏହି ପରୀକ୍ଷାରେ ydotool କିମ୍ବା dotool ଚଲାଇ ନାହୁଁ, ତେଣୁ ଆମ ପାଖରେ ସେଗୁଡ଼ିକ ପାଇଁ କୌଣସି CPU କିମ୍ବା memory ସଂଖ୍ୟା ନାହିଁ। ଆମେ ଯାହା କହିପାରିବା ତାହା ସେମାନଙ୍କ କାର୍ଯ୍ୟ ପ୍ରଣାଳୀ ଉପରେ ଆଧାରିତ।

Step 1: ପୁରୁଣା ପଦ୍ଧତି କେଉଁଠାରେ ବିଫଳ ହୁଏ ତାହା ଜାଣନ୍ତୁ

ଆମର ପ୍ରଥମ ସଂସ୍କରଣରେ xdotool ସହିତ ସ୍କ୍ରିନ୍ ରିଡିଂ (OCR) ବ୍ୟବହାର କରାଯାଇଥିଲା। ଏହା ପୋଷ୍ଟିଂ ପେଜ୍ ଖୋଲିଲା, ପଠାଇବା ପାଇଁ ଏକ କୀ’ ଦବାଇଲା, ତା’ପରେ ଏକ ସ୍କ୍ରିନସଟ୍ ନେଲା ଏବଂ "Your post was sent" ଖୋଜିବା ପାଇଁ ଟେକ୍ସଟ୍ ପଢ଼ିଲା।

ସମସ୍ୟା ଥିଲା କନଫର୍ମେସନ୍। ଅନେକ ଥର ପୋଷ୍ଟ ଲାଇଭ୍ ହୋଇଯାଉଥିଲା, କିନ୍ତୁ ସ୍କ୍ରିପ୍ଟ ମେସେଜ୍‌ଟି ଦେଖିପାରୁ ନଥିଲା ଏବଂ "FAILED" ରିପୋର୍ଟ କରୁଥିଲା। ଏହା ପରେ ଜଣେ ବ୍ୟକ୍ତିଙ୍କୁ ନିଜ ହାତରେ ପ୍ରୋଫାଇଲ୍ ଯାଞ୍ଚ କରିବାକୁ ପଡ଼ୁଥିଲା। କେବଳ ଇନପୁଟ୍ ପଠାଉଥିବା ଯେକୌଣସି ଟୁଲ୍‌ର ଏହା ହେଉଛି ମୁଖ୍ୟ ଦୁର୍ବଳତା: ଏହା ଜାଣିପାରିବ ନାହିଁ ଯେ କ’ଣ ଘଟିଲା, ତେଣୁ ଆପଣଙ୍କୁ ଏକ ଛବିରୁ ଅନୁମାନ କରିବାକୁ ପଡ଼େ।

Step 2: ଏହି ପଦକ୍ଷେପକୁ Playwright କୁ ସ୍ଥାନାନ୍ତର କରନ୍ତୁ

ଆମେ Playwright କୁ ଏହାର local debugging port ମାଧ୍ୟମରେ ପ୍ରାଇଭେଟ୍ ସ୍କ୍ରିନ୍‌ରେ ପୂର୍ବରୁ ଚାଲୁଥିବା ବ୍ରାଉଜର୍ ସହିତ ସଂଯୋଗ କଲୁ। ସ୍କ୍ରିପ୍ଟ ଏବେ compose box ପାଇଁ ଅପେକ୍ଷା କରେ, ଆମ ଟେକ୍ସଟ୍ ଏଥିରେ ଅଛି କି ନାହିଁ ଯାଞ୍ଚ କରେ, Post ବଟନ୍ enabled ଅଛି କି ନାହିଁ ଯାଞ୍ଚ କରେ, ଏହାକୁ କ୍ଲିକ୍ କରେ, ଏବଂ କନଫର୍ମେସନ୍ ପାଇଁ ଅପେକ୍ଷା କରେ। ଯଦି ମେସେଜ୍ ମିସ୍ ହୋଇଯାଏ, ତେବେ ଏହା କୌଣସି ଜିନିଷକୁ ବିଫଳ ବୋଲି ଘୋଷଣା କରିବା ପୂର୍ବରୁ ଏକ ନୂତନ ପୋଷ୍ଟ ପାଇଁ ପ୍ରୋଫାଇଲ୍‌କୁ ଦେଖେ।

ଆମେ ପୁରୁଣା xdotool ରୁଟ୍‌କୁ ଏକ fallback ଭାବରେ ରଖିଲୁ। ଯଦି କୌଣସି କାରଣରୁ Playwright ଷ୍ଟେପ୍ ବିଫଳ ହୁଏ, ଏକ ଚେତାବନୀ ପଠାଯାଏ ଏବଂ ତାହା ବଦଳରେ ପୁରୁଣା ରୁଟ୍ ଚେଷ୍ଟା କରେ।

Step 3: ଖର୍ଚ୍ଚ ମାପନ୍ତୁ

ଆମେ ପ୍ରତ୍ୟେକ ରୁଟ୍‌ର ଗୋଟିଏ dry run ଚଲାଇଲୁ, ଯେଉଁଥିରେ ଶେଷରେ ପୋଷ୍ଟକୁ ବାଦ୍ ଦିଆଗଲା, ଏବଂ ଏହାକୁ standard time command ସାହାଯ୍ୟରେ ମାପିଲୁ।

/usr/bin/time -f "wall %es  cpu %U+%Ss  peak RAM %M KB" <command>
Playwright xdotool plus OCR
Wall time 9.3 ସେକେଣ୍ଡ 20.2 ସେକେଣ୍ଡ
CPU time (user plus system) 1.4 ସେକେଣ୍ଡ 1.1 ସେକେଣ୍ଡ
Peak memory ପ୍ରାୟ 165 MB ପ୍ରାୟ 51 MB

ଏଗୁଡ଼ିକ ଏକକ ମାପ, ହାରାହାରି ନୁହେଁ, ତେଣୁ ଏଗୁଡ଼ିକୁ ଏକ ମୋଟାମୋଟି ଧାରଣା ଭାବରେ ଗ୍ରହଣ କରନ୍ତୁ।

Playwright ପ୍ରାୟ 110 MB ଅଧିକ memory ବ୍ୟବହାର କରେ, କାରଣ ଏହା ଏକ Node process ଆରମ୍ଭ କରେ। CPU ପ୍ରାୟ ସମାନ ଅଟେ। Playwright ଶୀଘ୍ର ଶେଷ ହୁଏ, କାରଣ ଏହା କେବଳ ପେଜ୍ ପ୍ରସ୍ତୁତ ନହେବା ପର୍ଯ୍ୟନ୍ତ ଅପେକ୍ଷା କରେ, ଯେତେବେଳେ କି xdotool ରୁଟ୍ fixed waits ବ୍ୟବହାର କରେ।

ସବୁଠାରୁ ବଡ଼ ଖର୍ଚ୍ଚ କୌଣସି ଟୁଲ୍‌ର ନଥିଲା। ବ୍ରାଉଜର୍ ନିଜେ ଏହାର processes ମଧ୍ୟରେ ପ୍ରାୟ 4.6 GB ବ୍ୟବହାର କରିଥିଲା, ଏବଂ ଉଭୟ ରୁଟ୍ ଏହାକୁ share କରନ୍ତି। ଏହି ଟୁଲ୍‌ଗୁଡ଼ିକ ମଧ୍ୟରୁ ବାଛିବା ଦ୍ୱାରା ସେହି ସଂଖ୍ୟାରେ କୌଣସି ପରିବର୍ତ୍ତନ ହୁଏ ନାହିଁ।

Step 4: ଏକ ସରଳ ନିୟମ ସହିତ ନିଷ୍ପତ୍ତି ନିଅନ୍ତୁ

  1. ଯଦି ଟାର୍ଗେଟ୍ ଏକ ୱେବ୍ ପେଜ୍ ଏବଂ ଏକ ବ୍ରାଉଜର୍ ଉପଲବ୍ଧ ଅଛି, ତେବେ Playwright ବ୍ୟବହାର କରନ୍ତୁ। ଏହା ପେଜ୍ ପଢ଼ିପାରେ, ତେଣୁ ଏହା ଜାଣିଥାଏ ଯେ କ’ଣ ଘଟିଲା।
  2. ଯଦି ଆପଣଙ୍କୁ ଏକ X11 ଡିସପ୍ଲେରେ ଏପରି କିଛି ନିୟନ୍ତ୍ରଣ କରିବାକୁ ପଡ଼ିବ ଯାହା ୱେବ୍ ପେଜ୍ ନୁହେଁ, ତେବେ xdotool ବ୍ୟବହାର କରନ୍ତୁ ଏବଂ ଫଳାଫଳ ଯାଞ୍ଚ କରିବା ପାଇଁ ସ୍କ୍ରିନ୍ ପଢ଼ନ୍ତୁ।
  3. ଯଦି ଆପଣଙ୍କୁ ଏକ ପ୍ରକୃତ Wayland ଡେସ୍କଟପ୍ ନିୟନ୍ତ୍ରଣ କରିବାକୁ ପଡ଼ିବ, ତେବେ ydotool କିମ୍ବା dotool ବ୍ୟବହାର କରନ୍ତୁ, ଏବଂ ଏହା ସ୍ୱୀକାର କରନ୍ତୁ ଯେ ଇନପୁଟ୍ ସମଗ୍ର ମେସିନ୍‌କୁ ଯାଏ।
  4. ଯେଉଁଠାରେ ଏକ ସାଇଟ୍ ଏକ ମାଗଣା ଅଫିସିଆଲ୍ API ପ୍ରଦାନ କରେ, ସେଗୁଡ଼ିକ ମଧ୍ୟରୁ ଯେକୌଣସିଟି ପୂର୍ବରୁ ତାହା ବ୍ୟବହାର କରନ୍ତୁ।

ନିଷ୍କର୍ଷ

resources କ୍ଷେତ୍ରରେ, xdotool ପ୍ରାୟ 110 MB memory କମ୍ ବ୍ୟବହାର କରେ, ଏବଂ CPU ପାର୍ଥକ୍ୟ ଏତେ କମ୍ ଯେ ବିଶେଷ ଫରକ ପକାଏ ନାହିଁ। ବିଶ୍ୱସନୀୟତା କ୍ଷେତ୍ରରେ, Playwright ସ୍ପଷ୍ଟ ଭାବରେ ଜିତେ, କାରଣ ଏହା ଛବିରୁ ଅନୁମାନ କରିବା ବଦଳରେ ପେଜ୍ ଯାଞ୍ଚ କରେ। ଦିନକୁ ଥରେ ଚାଲୁଥିବା ଏକ କାର୍ଯ୍ୟ ପାଇଁ, CPU ର ଏକ ସେକେଣ୍ଡ ଏବଂ ଅଳ୍ପ memory ପ୍ରକୃତ ଖର୍ଚ୍ଚ ନୁହେଁ। ଏକ ଭୁଲ୍ "failed" ରିପୋର୍ଟ ଯାହା ଜଣେ ବ୍ୟକ୍ତିଙ୍କୁ ହାତରେ ଯାଞ୍ଚ କରିବାକୁ ପଠାଏ, ତାହା ହିଁ ପ୍ରକୃତ ଖର୍ଚ୍ଚ।

ସୁବିଧାଗୁଡ଼ିକ

  • Playwright ପେଜ୍ ପଢ଼ିପାରେ, ତେଣୁ ଏହା ନିଶ୍ଚିତ କରିପାରିବ ଯେ ଏକ କାର୍ଯ୍ୟ ସଫଳ ହେଲା କି ନାହିଁ।
  • Playwright ସ୍କ୍ରିନ୍ ପୋଜିସନ୍ ସହିତ ବନ୍ଧା ନୁହେଁ, ତେଣୁ ଛୋଟ layout ପରିବର୍ତ୍ତନ ଏହାକୁ କ୍ୱଚିତ୍ ପ୍ରଭାବିତ କରେ।
  • xdotool ବହୁତ ହାଲୁକା ଏବଂ ଏଥିପାଇଁ X11 ବ୍ୟତୀତ ଅନ୍ୟ କୌଣସି ଅତିରିକ୍ତ ସଫ୍ଟୱେର୍ ଆବଶ୍ୟକ ହୁଏ ନାହିଁ।
  • xdotool କେବଳ ଆପଣ ବାଛିଥିବା ଡିସପ୍ଲେକୁ ଇନପୁଟ୍ ପଠାଏ, ଯାହା ଏକ ଲକ୍ ଥିବା ଡେସ୍କଟପ୍‌କୁ ସୁରକ୍ଷିତ ରଖେ।
  • ydotool ଏବଂ dotool Wayland ରେ କାମ କରନ୍ତି, ଯେଉଁଠାରେ xdotool କରିପାରେ ନାହିଁ।
  • ଏକ ଦ୍ୱିତୀୟ ରୁଟ୍‌କୁ fallback ଭାବରେ ରଖିବା ଦ୍ୱାରା ଗୋଟିଏ ବିଫଳତା କାର୍ଯ୍ୟକୁ ବନ୍ଦ କରେ ନାହିଁ।

ଅସୁବିଧାଗୁଡ଼ିକ

  • Playwright ଏକ ସାଧାରଣ xdotool କଲ୍ ତୁଳନାରେ ଅଧିକ memory ବ୍ୟବହାର କରେ।
  • Playwright ପେଜ୍‌ର element ନାମ ଉପରେ ନିର୍ଭର କରେ, ଯାହାକୁ ଏକ ସାଇଟ୍ ବିନା ସୂଚନାରେ ପରିବର୍ତ୍ତନ କରିପାରେ।
  • xdotool ସ୍କ୍ରିନ୍ ଦେଖିପାରିବ ନାହିଁ, ତେଣୁ ଏହାକୁ OCR କିମ୍ବା screenshots ଆବଶ୍ୟକ ହୁଏ ଏବଂ ଏହା false failures ରିପୋର୍ଟ କରିପାରେ।
  • ydotool ଏବଂ dotool ସମଗ୍ର ମେସିନ୍‌କୁ ଇନପୁଟ୍ ପଠାନ୍ତି ଏବଂ ଏକ window ବାଛି ପାରିବେ ନାହିଁ।
  • ydotool ଏବଂ dotool କୁ ସାଧାରଣତଃ kernel input device ର access ଆବଶ୍ୟକ ହୁଏ।
  • ଏକ ସାଇଟ୍‌ର Browser automation ସେହି ସାଇଟ୍‌ର ନିୟମାବଳୀ ବିରୁଦ୍ଧରେ ହୋଇପାରେ, ତେଣୁ ଏହାର ବ୍ୟବହାର ସୀମିତ ରଖନ୍ତୁ।

ସତର୍କତା

ଏହି ଆର୍ଟିକିଲ୍‌ଟି ଶିକ୍ଷଣୀୟ ଏବଂ ଏକ setup ବର୍ଣ୍ଣନା କରେ। ଏହି ସଂଖ୍ୟାଗୁଡ଼ିକ ଗୋଟିଏ ମେସିନ୍‌ରେ ଏକକ dry run ରୁ ଆସିଛି ଏବଂ ଆପଣଙ୍କ କ୍ଷେତ୍ରରେ ଭିନ୍ନ ହୋଇପାରେ। ଯେକୌଣସି placeholder values କୁ ଆପଣଙ୍କ ନିଜସ୍ୱ ମୂଲ୍ୟ ସହିତ ବଦଳାନ୍ତୁ, ଏହା ଉପରେ ନିର୍ଭର କରିବା ପୂର୍ବରୁ ଆପଣଙ୍କ display system ରେ ପ୍ରତ୍ୟେକ ଟୁଲ୍ କିପରି କାମ କରେ ତାହା ଯାଞ୍ଚ କରନ୍ତୁ, ଏବଂ ଆପଣ ଅଟୋମେଟ୍ କରୁଥିବା ଯେକୌଣସି ସାଇଟ୍‌ର ସର୍ତ୍ତାବଳୀ ପଢ଼ନ୍ତୁ। ଆମେ ydotool କିମ୍ବା dotool ର ମାପ କରିନାହୁଁ, ତେଣୁ ସେଗୁଡ଼ିକର ଖର୍ଚ୍ଚ ନିଜେ ଯାଞ୍ଚ କରନ୍ତୁ।

ବାରମ୍ବାର ପଚରାଯାଉଥିବା ପ୍ରଶ୍ନଗୁଡ଼ିକ

  • ଏକ Linux ସର୍ଭରରେ ଅଟୋମେସନ୍ ପାଇଁ କେଉଁଟି ସର୍ବୋତ୍ତମ? — ୱେବ୍ ପେଜ୍ ପାଇଁ, Playwright। ଏକ X11 ଡିସପ୍ଲେରେ ଅଣ-ୱେବ୍ ପ୍ରୋଗ୍ରାମ୍ ପାଇଁ, xdotool। ଚୟନ ଆପଣ କ’ଣ ନିୟନ୍ତ୍ରଣ କରୁଛନ୍ତି ତାହା ଉପରେ ନିର୍ଭର କରେ।
  • xdotool କ’ଣ Wayland ରେ କାମ କରେ? — ପ୍ରକୃତ Wayland ଡେସ୍କଟପ୍ ପାଇଁ ନୁହେଁ। ଏଥିପାଇଁ ଏକ X11 ଡିସପ୍ଲେ ଆବଶ୍ୟକ, ଯେପରିକି ଏକ virtual display।
  • ydotool ଏବଂ dotool ମଧ୍ୟରେ ପାର୍ଥକ୍ୟ କ’ଣ? — ଉଭୟ kernel input device ରେ ଲେଖନ୍ତି ଏବଂ Wayland ରେ କାମ କରନ୍ତି। ଆପଣ ସେମାନଙ୍କୁ କିପରି commands ଦିଅନ୍ତି ଏବଂ ସେଗୁଡ଼ିକ କିପରି set up ହୁଏ, ସେଥିରେ ମୁଖ୍ୟତଃ ସେମାନଙ୍କର ପାର୍ଥକ୍ୟ ରହିଛି।
  • କେଉଁଟି କମ୍ CPU ଏବଂ RAM ବ୍ୟବହାର କରେ? — ଆମ ପରୀକ୍ଷାରେ, xdotool ପ୍ରାୟ 110 MB କମ୍ memory ବ୍ୟବହାର କରିଥିଲା, ଏବଂ CPU time ପ୍ରାୟ ସମାନ ଥିଲା।
  • Playwright କ’ଣ ଧୀର ଅଟେ? — ନା। ଆମ ପରୀକ୍ଷାରେ ଏହା 20.2 ସେକେଣ୍ଡ ତୁଳନାରେ 9.3 ସେକେଣ୍ଡରେ ଶେଷ ହୋଇଥିଲା, କାରଣ ଏହା fixed waits ଉପରେ ନିର୍ଭର କରେ ନାହିଁ।
  • ଏହି ଟୁଲ୍‌ଗୁଡ଼ିକ କ’ଣ ବିନା monitor ରେ ଚାଲିପାରିବ? — ହଁ। Xvfb ଭଳି ଏକ virtual display ସେମାନଙ୍କୁ ଏକ ସ୍କ୍ରିନ୍ ପ୍ରଦାନ କରେ ଯାହା କେବଳ memory ରେ ଉପସ୍ଥିତ ଥାଏ।
  • ଏକ fallback route କାହିଁକି ରଖିବେ? — ଏକ ସାଇଟ୍ ଯେକୌଣସି ସମୟରେ ଏହାର page ବଦଳାଇପାରେ। ଏକ ଦ୍ୱିତୀୟ route କାର୍ଯ୍ୟକୁ ଶେଷ କରିବାକୁ ଅନୁମତି ଦିଏ ଯେତେବେଳେ ଆପଣ ପ୍ରଥମଟିକୁ ଠିକ୍ କରନ୍ତି।
  • ଏଗୁଡ଼ିକୁ ଏକ shared desktop ରେ ଚଲାଇବା କ’ଣ ସୁରକ୍ଷିତ? — ସତର୍କ ରୁହନ୍ତୁ। kernel input device ବ୍ୟବହାର କରୁଥିବା ଟୁଲ୍‌ଗୁଡ଼ିକ ସମଗ୍ର ମେସିନ୍‌କୁ input ପଠାନ୍ତି, ତେଣୁ ଏକ private virtual display କୁ ପ୍ରାଥମିକତା ଦିଅନ୍ତୁ।

ଟ୍ୟାଗ୍‌ଗୁଡ଼ିକ

#automation #linux #playwright #xdotool #ydotool #dotool #wayland #x11 #browserautomation #devops

Free field guide

Docker Security Checklist

Lock down your containers from build to runtime — 29 practical controls covering images, runtime flags, secrets, and the daemon. Enter your email — you'll get the PDF instantly, plus new posts on Docker, Linux & security.