🎧 Listen to this article: हिंदी · English · தமிழ் · తెలుగు · ಕನ್ನಡ
🌍 Read this in your language: हिंदी · தமிழ் · తెలుగు · ಕನ್ನಡ · മലയാളം · ଓଡ଼ିଆ · 日本語 · 中文
ஒரு Linux கணினியில் உங்களுக்காக கிளிக் செய்யவும், தட்டச்சு செய்யவும் மற்றும் பதிவிடவும் ஒரு ஸ்கிரிப்ட் எப்போதாவது தேவைப்பட்டிருந்தால், நீங்கள் நான்கு பெயர்களைக் கடந்து வந்திருப்பீர்கள்: xdotool, ydotool, dotool மற்றும் Playwright. தூரத்திலிருந்து பார்க்கும்போது அவை ஒரே மாதிரியாகத் தெரிந்தாலும், அவை செயல்படும் விதம் மிகவும் வேறுபட்டது. இன்று, October 20, 2026 அன்று, இந்த கேள்வி முன்னெப்போதையும் விட மிகவும் முக்கியமானதாகும், ஏனெனில் பல Linux டெஸ்க்டாப்புகள் இப்போது பழைய X11 அமைப்பிற்குப் பதிலாக Wayland-ஐ இயக்குகின்றன, மேலும் அது எந்தக் கருவி வேலை செய்யும் என்பதையே மாற்றிவிடுகிறது.
ஒரு சிறிய நிறுவனத்தின் தினசரி சமூக ஊடகப் பதிவுப் பணியை ஆட்டோமேட் செய்தபோது நாங்கள் கற்றுக்கொண்டவற்றை இந்தக் கட்டுரை பகிர்ந்து கொள்கிறது. இந்தப் பணி கண்ணுக்குத் தெரியாத ஒரு பிரத்தியேகத் திரையைக் கொண்ட சர்வரில் இயங்கி, பல தளங்களில் தினமும் ஒரு கட்டுரையைப் பதிவிடுகிறது. இந்தக் கருவிகளுக்கு இடையே நாங்கள் தேர்வு செய்து, ஒரு படியை ஒரு கருவியிலிருந்து மற்றொன்றுக்கு மாற்றி, அதன் பயன்பாட்டுச் செலவை அளவிட்டோம்.
சுருக்கமான பதில்
கண்ணுக்குத் தெரியாத X11 திரையில் உள்ள ஒரு பணிக்கு, பயன்படுத்தவும் Playwright தளம் ஒரு சாதாரண வலைப்பக்கமாக இருக்கும்போது, மேலும் வைத்திருக்கவும் xdotool ஒரு backup-ஆக. ydotool மற்றும் dotool ஆகியவை வேறு ஒரு பிரச்சனைக்காக உருவாக்கப்பட்டவை. CPU மற்றும் memory-இல், Playwright மற்றும் xdotool இடையே உள்ள வித்தியாசம் குறைவு. நம்பகத்தன்மை மிக முக்கியமானது.
ஒவ்வொரு கருவியும் உண்மையில் என்ன செய்கிறது
xdotool ஒரு X11 display உடன் தொடர்பு கொள்கிறது. இது மவுஸை நகர்த்தவும், கிளிக் செய்யவும், தட்டச்சு செய்யவும், விசைகளை அழுத்தவும் மற்றும் விண்டோக்களைப் பெயரைக் கொண்டு கண்டறியவும் முடியும். நீங்கள் குறிப்பிடும் display-க்கு மட்டுமே இது உள்ளீட்டை அனுப்புகிறது. இதனால் திரையைப் பார்க்க முடியாது, எனவே திரையில் என்ன இருக்கிறது என்பதை அறிய விரும்பினால் நீங்களே ஒரு ஸ்கிரீன்ஷாட் எடுக்க வேண்டும்.
ydotool மற்றும் dotool கீழ் மட்டத்தில் செயல்படுகின்றன. அவை கர்னலின் உள்ளீட்டுச் சாதனத்தில் (uinput எனப்படும்) எழுதுகின்றன, எனவே முழு கணினியிலும் இணைக்கப்பட்ட உண்மையான விசைப்பலகை மற்றும் மவுஸ் போல அவை செயல்படுகின்றன. இதனால்தான் xdotool செயல்படாத Wayland-இல் அவை செயல்படுகின்றன. ஆனால் இதன் பாதகம் என்னவென்றால், அவற்றால் ஒரு குறிப்பிட்ட விண்டோவைத் தேர்வு செய்ய முடியாது மற்றும் உண்மையான டெஸ்க்டாப்பில் எது கவனத்தில் (focus) இருக்கிறதோ அதற்கே உள்ளீட்டை அனுப்புகின்றன. மேலும் உள்ளீட்டுச் சாதனத்தைப் பயன்படுத்துவதற்கு அவற்றுக்கு வழக்கமாக கூடுதல் அனுமதியும் தேவைப்படுகிறது.
Playwright முற்றிலும் வேறுபட்ட வகையைச் சேர்ந்தது. இது மவுஸ் அல்லது விசைப்பலகையைப் போல போலியாகச் செயல்படுவதில்லை. இது உலாவியுடன் இணைந்து, வலைப்பக்கத்தையே நேரடியாகக் கட்டுப்படுத்துகிறது. ஒரு பொத்தான் தோன்றும் வரை காத்திருக்கவும், பெட்டியில் உள்ள உரையைப் படிக்கவும், ஏதேனும் செய்தி தோன்றியுள்ளதா என்பதை உங்களுக்குத் தெரிவிக்கவும் இதனால் முடியும்.
திரையின் வகை ஏன் பெரும்பாலானவற்றைத் தீர்மானிக்கிறது
எங்களது பணி ஒரு பிரத்தியேக மெய்நிகர் டிஸ்ப்ளேவில் (private virtual display) இயங்குகிறது, இது நினைவகத்தில் மட்டுமே இருக்கும் ஒரு திரை என்பதால் யாரும் அதைப் பார்க்க முடியாது. இது X11 என்பதால், xdotool வேலை செய்கிறது. ydotool மற்றும் dotool ஆகியவை தங்களின் உள்ளீட்டை முழு கணினிக்கும் அனுப்பும், அது உண்மையான கன்சோல் டெஸ்க்டாப்பில் சென்று விழக்கூடும். எங்கள் சூழலில் மற்றொரு நிர்வாகி அந்தத் திரையைப் பார்க்க முடியும் என்பதால், அந்த டெஸ்க்டாப் பூட்டப்பட்ட நிலையிலேயே (locked) இருக்க வேண்டும். எனவே வேகத்திற்காக அல்லாமல், பாதுகாப்புக் காரணங்களுக்காக அவ்விரு கருவிகளும் தவிர்க்கப்பட்டன.
இந்தச் சோதனையில் நாங்கள் ydotool அல்லது dotool-ஐ இயக்கவில்லை, எனவே அவற்றுக்கான CPU அல்லது memory புள்ளிவிவரங்கள் எங்களிடம் இல்லை. நாங்கள் கூறுவது அவை எவ்வாறு செயல்படுகின்றன என்பதை அடிப்படையாகக் கொண்டது மட்டுமே.
படி 1: பழைய முறை எங்கு தோல்வியடைகிறது என்பதைக் கண்டறிதல்
எங்களின் முதல் பதிப்பு xdotool உடன் திரை வாசிப்பை (OCR) பயன்படுத்தியது. அது பதிவிடும் பக்கத்தைத் திறந்து, அனுப்புவதற்கான ஒரு விசையை அழுத்தி, பின்னர் ஸ்கிரீன்ஷாட் எடுத்து அதில் "Your post was sent" உள்ளதா என உரையைப் படித்தது.
உறுதிப்படுத்துவதில்தான் சிக்கல் எழுந்தது. பல முறை பதிவு வெளியாகிவிட்ட போதிலும், ஸ்கிரிப்ட் அந்தச் செய்தியைக் கவனிக்கத் தவறி "FAILED" என்று தெரிவித்தது. அதன் பிறகு ஒரு நபர் கைமுறையாக சுயவிவரத்தைச் சரிபார்க்க வேண்டியிருந்தது. உள்ளீட்டை மட்டுமே அனுப்பும் எந்தவொரு கருவியின் முக்கிய பலவீனமும் இதுவே: என்ன நடந்தது என்பதை அதனால் அறிய முடியாது, எனவே நீங்கள் ஒரு படத்திலிருந்து யூகிக்க வேண்டியிருக்கும்.
படி 2: இந்தப் படியை Playwright-க்கு மாற்றுதல்
பிரத்தியேகத் திரையில் ஏற்கனவே இயங்கிக் கொண்டிருந்த உலாவியுடன், அதன் உள்ளூர் பிழைத்திருத்த போர்ட் (local debugging port) வழியாக Playwright-ஐ இணைத்தோம். இப்போது ஸ்கிரிப்ட் compose box தோன்றும் வரை காத்திருந்து, அதில் நமது உரை உள்ளதா எனச் சரிபார்த்து, Post பொத்தான் இயக்கப்பட்டிருப்பதை உறுதிசெய்து, அதைக் கிளிக் செய்து, உறுதிப்படுத்தலுக்காகக் காத்திருக்கிறது. ஒருவேளை உறுதிப்படுத்தல் செய்தி தவறவிடப்பட்டால், எதையும் தோல்வி என அழைக்கும் முன், சுயவிவரத்தில் புதிய பதிவு வந்துள்ளதா என்று அது சரிபார்க்கிறது.
நாங்கள் பழைய xdotool வழியைக் காப்பு முறையாக (fallback) வைத்திருக்கிறோம். ஏதேனும் ஒரு காரணத்திற்காக Playwright படி தோல்வியடைந்தால், ஓர் எச்சரிக்கை அனுப்பப்பட்டு அதற்குப் பதிலாகப் பழைய வழி முயற்சிக்கும்.
படி 3: பயன்பாட்டுச் செலவை அளவிடுதல்
நாங்கள் ஒவ்வொரு வழியிலும் ஒரு சோதனை ஓட்டத்தை (dry run) நடத்தினோம் (இறுதியில் பதிவு நிராகரிக்கப்பட்டது), அதை வழக்கமான time கட்டளை மூலம் அளவிட்டோம்.
/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 நேரம் (user plus system) | 1.4 வினாடிகள் | 1.1 வினாடிகள் |
| Peak memory | சுமார் 165 MB | சுமார் 51 MB |
இவை ஒற்றை அளவீடுகள் மட்டுமே, சராசரிகள் அல்ல, எனவே இவற்றை ஒரு தோராயமான வழிகாட்டியாக மட்டுமே எடுத்துக்கொள்ளவும்.
Playwright ஒரு Node செயல்முறையைத் தொடங்குவதால், சுமார் 110 MB கூடுதல் memory-ஐப் பயன்படுத்துகிறது. CPU பயன்பாடு கிட்டத்தட்ட ஒன்றுதான். xdotool வழி நிலையான காத்திருப்பு நேரங்களைப் பயன்படுத்தும் வேளையில், Playwright பக்கம் தயாராகும் வரை மட்டுமே காத்திருப்பதால் விரைவாக முடிவடைகிறது.
இதில் மிகப்பெரிய பயன்பாட்டுச் செலவு இரண்டு கருவிகளுமே அல்ல. உலாவியே தனது செயல்முறைகளில் சுமார் 4.6 GB அளவைப் பயன்படுத்தியது, இரு வழிகளுமே அதைப் பகிர்ந்து கொள்கின்றன. இந்தக் கருவிகளுக்கு இடையே ஒன்றைத் தேர்ந்தெடுப்பது அந்த எண்ணிக்கையை மாற்றிவிடாது.
படி 4: ஒரு எளிய விதியைக் கொண்டு தீர்மானித்தல்
- இலக்கு ஒரு வலைப்பக்கமாக இருந்து, உலாவி கிடைக்கப் பெற்றால், Playwright-ஐப் பயன்படுத்தவும். இது பக்கத்தைப் படிப்பதால், என்ன நடந்தது என்பதை இது அறிந்துகொள்கிறது.
- வலைப்பக்கம் அல்லாத ஒன்றை ஒரு X11 டிஸ்ப்ளேவில் கட்டுப்படுத்த வேண்டியிருந்தால், xdotool-ஐப் பயன்படுத்தி, முடிவுகளைச் சரிபார்க்க திரையைப் படிக்கவும்.
- ஒரு உண்மையான Wayland டெஸ்க்டாப்பைக் கட்டுப்படுத்த வேண்டியிருந்தால், ydotool அல்லது dotool-ஐப் பயன்படுத்தவும், மேலும் உள்ளீடு முழு கணினிக்கும் செல்லும் என்பதை ஏற்றுக்கொள்ளவும்.
- ஒரு தளம் இலவச அதிகாரப்பூர்வ API-ஐ வழங்கும் இடங்களில், இவை எதற்கும் முன்பாக அதைப் பயன்படுத்தவும்.
முடிவுரை
வளங்களைப் பொறுத்தவரை, xdotool சுமார் 110 MB அளவிலான memory-யில் இலகுவானது, மேலும் CPU வித்தியாசம் பெரிதாகக் கருதும் அளவுக்கு இல்லை. நம்பகத்தன்மையைப் பொறுத்தவரை, Playwright தெளிவாக வெற்றி பெறுகிறது, ஏனெனில் இது ஒரு படத்திலிருந்து யூகிப்பதற்குப் பதிலாக பக்கத்தையே நேரடியாகச் சரிபார்க்கிறது. தினமும் ஒரு முறை இயங்கும் ஒரு பணிக்கு, ஒரு வினாடி CPU நேரமும் சிறிய அளவு memory-யும் உண்மையான செலவு அல்ல. மாறாக, தவறான "failed" அறிக்கை வந்து, ஒரு நபர் கைமுறையாகச் சரிபார்க்க வேண்டிய ஏற்படுவதுதான் உண்மையான இழப்பாகும்.
நன்மைகள்
- Playwright பக்கத்தைப் படிக்கிறது, எனவே ஒரு செயல் வேலை செய்தது என்பதை அதனால் உறுதிப்படுத்த முடியும்.
- Playwright திரையின் அமைவிடங்களைச் சார்ந்திருக்கவில்லை, எனவே அமைப்பில் ஏற்படும் சிறிய மாற்றங்களால் இது செயலிழப்பது குறைவு.
- xdotool மிகவும் இலகுவானது மற்றும் X11-ஐத் தவிர கூடுதல் மென்பொருள்கள் எதுவும் இதற்குத் தேவையில்லை.
- xdotool நீங்கள் தேர்ந்தெடுக்கும் display-க்கு மட்டுமே உள்ளீட்டை அனுப்புகிறது, இது பூட்டப்பட்ட டெஸ்க்டாப்பைப் பாதுகாப்பாக வைக்கிறது.
- xdotool செயல்பட முடியாத Wayland-இல் ydotool மற்றும் dotool செயல்படுகின்றன.
- இரண்டாவது வழியைக் காப்பு முறையாக வைத்திருப்பது, ஒரு தோல்வி பணியைத் தடுத்து நிறுத்தாது என்பதை உறுதிசெய்கிறது.
குறைபாடுகள்
- ஒரு எளிய xdotool அழைப்பை விட Playwright அதிக memory-ஐப் பயன்படுத்துகிறது.
- Playwright பக்கத்தின் element பெயர்களைச் சார்ந்துள்ளது, ஒரு தளம் முன்னறிவிப்பின்றி அவற்றை மாற்றக்கூடும்.
- xdotool-ஆல் திரையைப் பார்க்க முடியாது, எனவே இதற்கு OCR அல்லது ஸ்கிரீன்ஷாட்கள் தேவைப்படுகின்றன மற்றும் தவறான தோல்வி அறிக்கைகளை அளிக்கக்கூடும்.
- ydotool மற்றும் dotool ஆகியவை முழு கணினிக்கும் உள்ளீட்டை அனுப்புகின்றன மற்றும் ஒரு குறிப்பிட்ட விண்டோவைத் தேர்ந்தெடுக்க முடியாது.
- ydotool மற்றும் dotool ஆகியவற்றிற்கு வழக்கமாகக் கர்னல் உள்ளீட்டுச் சாதனத்திற்கான அணுகல் தேவைப்படுகிறது.
- ஒரு தளத்தின் பிரவுசர் ஆட்டோமேஷன் அந்தத் தளத்தின் விதிமுறைகளுக்கு எதிரானதாக இருக்கக்கூடும், எனவே இதன் பயன்பாட்டு அளவைக் குறைவாக வைத்திருக்கவும்.
எச்சரிக்கை
இந்தக் கட்டுரை கல்வி நோக்கத்திற்கானது மற்றும் ஒரு குறிப்பிட்ட அமைப்பையே விவரிக்கிறது. இந்தக் புள்ளிவிவரங்கள் ஒரே கணினியில் நடத்தப்பட்ட ஒற்றை சோதனை ஓட்டத்திலிருந்து (dry run) பெறப்பட்டவை, உங்கள் கணினியில் இவை மாறுபடலாம். ஏதேனும் ஒதுக்கிட மதிப்புகளை (placeholder values) உங்கள் சொந்த மதிப்புகளால் மாற்றவும், எந்தவொரு கருவியையும் நம்புவதற்கு முன்பு உங்கள் டிஸ்ப்ளே அமைப்பில் அது எவ்வாறு செயல்படுகிறது என்பதைச் சரிபார்க்கவும், மேலும் நீங்கள் ஆட்டோமேட் செய்யும் எந்தவொரு தளத்தின் விதிமுறைகளையும் படிக்கவும். நாங்கள் ydotool அல்லது dotool-ஐ அளவிடவில்லை, எனவே அவற்றுக்கான பயன்பாட்டுச் செலவை நீங்களே சரிபார்த்துக் கொள்ளவும்.
அடிக்கடி கேட்கப்படும் கேள்விகள்
- Linux சர்வரில் ஆட்டோமேஷனுக்கு எது சிறந்தது? — வலைப்பக்கங்களுக்கு, Playwright. X11 டிஸ்ப்ளேவில் உள்ள வலை அல்லாத நிரல்களுக்கு, xdotool. தேர்வு நீங்கள் எதனைக் கட்டுப்படுத்துகிறீர்கள் என்பதைப் பொறுத்தது.
- Wayland-இல் xdotool வேலை செய்யுமா? — உண்மையான Wayland டெஸ்க்டாப்பில் செய்யாது. அதற்கு மெய்நிகர் திரை போன்ற ஒரு X11 டிஸ்ப்ளே தேவைப்படுகிறது.
- ydotool மற்றும் dotool இடையே உள்ள வித்தியாசம் என்ன? — இரண்டுமே கர்னல் உள்ளீட்டுச் சாதனத்தில் எழுதுகின்றன மற்றும் Wayland-இல் செயல்படுகின்றன. அவற்றுக்கு நீங்கள் கட்டளைகளை வழங்கும் விதம் மற்றும் அவை கட்டமைக்கப்படும் விதத்தில்தான் முக்கியமாக வேறுபடுகின்றன.
- எது குறைவான CPU மற்றும் RAM-ஐப் பயன்படுத்துகிறது? — எங்களின் சோதனையில், xdotool சுமார் 110 MB குறைவான memory-ஐப் பயன்படுத்தியது, மேலும் CPU நேரம் கிட்டத்தட்ட ஒன்றாகவே இருந்தது.
- Playwright மெதுவானதா? — இல்லை. எங்களின் சோதனையில் இது நிலையான காத்திருப்பு நேரங்களைச் சார்ந்து இருக்காததால், 20.2 வினாடிகளுக்கு எதிராக 9.3 வினாடிகளில் முடிவடைந்தது.
- மானிட்டர் இல்லாமலேயே இந்தக் கருவிகளால் இயங்க முடியுமா? — ஆம். Xvfb போன்ற ஒரு மெய்நிகர் டிஸ்ப்ளே நினைவகத்தில் மட்டுமே இருக்கும் ஒரு திரையை அவற்றுக்கு வழங்குகிறது.
- ஏன் ஒரு காப்பு வழியை வைத்திருக்க வேண்டும்? — ஒரு தளம் எந்த நேரத்திலும் அதன் பக்கத்தை மாற்றக்கூடும். நீங்கள் முதலாவதைச் சரிசெய்யும் வரை இரண்டாவது வழி பணியை முடிக்க உதவுகிறது.
- பகிரப்பட்ட டெஸ்க்டாப்பில் இவற்றை இயக்குவது பாதுகாப்பானதா? — கவனமாக இருக்கவும். கர்னல் உள்ளீட்டுச் சாதனத்தைப் பயன்படுத்தும் கருவிகள் முழு கணினிக்கும் உள்ளீட்டை அனுப்புகின்றன, எனவே பிரத்தியேக மெய்நிகர் டிஸ்ப்ளேவைப் பயன்படுத்த முன்னுரிமை அளியுங்கள்.
குறிச்சொற்கள்
#automation #linux #playwright #xdotool #ydotool #dotool #wayland #x11 #browserautomation #devops
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.
Free. No spam — unsubscribe in one click.


Responses
Sign in to leave a response.