HeadlessChrome101: Jit-Browser எவ்வாறு Chrome-ஐ முழுமையான பன்முக செயல்பாட்டு உலாவி–சர்வர்-உலாவி அடுக்கு ஆக மாற்றுகிறது
இது Jit-Browser என்ன செய்கிறது என்பதைத் தெளிவாக விளக்குகிறது, headless Chrome உடன், அது தனியுரிமை Jit-TR ரன்டைமைப் பயன்படுத்துவது எப்படி, மேலும் இது ஒரு முதல் தர உலாவி அம்சமாக மாற இன்னும் என்ன தேவை என்பதை விளக்குகிறது, மற்றொரு ஸ்கிரிப்ட் அல்ல.
ஒரு எளிய ஸ்கிரீன்ஷாட் கருவியிலிருந்து ஜிட்-பிரௌசர் வரை
நாங்கள் ஒரு சிறிய கட்டளை வரி கருவியுடன் தொடங்கினோம்: getpage https://example.com பக்கம்.png. இது ஒரு டாக்கர் கண்டெய்னரில் குரோமை இயக்கியது, பக்கம் example.com இன் ரெண்டர்டு ஸ்கிரீன்ஷாட்டை எடுத்தது, மற்றும் வெளியேறியது.
பயனுள்ள கருத்து சான்று. ஒவ்வொரு அழைப்பும் ஒரு குளிர்ந்த தொடக்கம். மொழிபெயர்ப்பு, அமர்வுகள் அல்லது நிலை பற்றி எதுவும் தெரியாது. இது வெறும் தலை இல்லாத கேமரா மட்டுமே.
ஜிட்-ப்ரௌசர் அடுத்த படியாகும். இது இன்னும் உண்மையான குரோமைப் பயன்படுத்துகிறது, ஆனால் இப்போது:
- அது பக்கத்தின் உள்ளே என்ன நடக்கிறது என்பதை பதிவு செய்கிறது.
- இது மொழிபெயர்ப்பு அடுக்கு ஆக ஜிட்-TR ஸ்கிரிப்டை ஊட்டுகிறது.
- இது குக்கி பேனர்கள் அல்லது டிராப்டவுன்கள் போன்ற எளிய ஓட்டங்களை பின்பற்ற முடியும்.
- இது முழுமையாக மொழிபெயர்க்கப்பட்ட HTML ஐப் பிடிக்கிறது, வெறும் ஸ்கிரீன்ஷாட்டை மட்டுமல்ல.
இந்தப் பக்கம் அந்த குழாய்களை விளக்குகிறது, எனவே நாங்கள் கையசைப்பதில்லை என்பதை நீங்கள் காணலாம். ஒரு உலாவி நிலை பலமொழி அடுக்கு எப்படி உண்மையில் செயல்படுகிறது என்பதை நாங்கள் காட்டுகிறோம்.
6 படிகளில் ஜிட்-உலாவி குழாய்
உயர்நிலையில், ஒவ்வொரு பிடிப்பும் ஒரே வரிசையைப் பின்பற்றுகிறது.
-
டாக்கர் உள்ளே உண்மையான குரோம் (தலைப்பில்லாமல்) துவக்கவும்.
நாங்கள் Puppeteer (pptr.dev) ஐப் பயன்படுத்தி சாதாரண உலாவிகளுக்கு சக்தியூட்டும் அதே இயந்திரத்தைத் தொடங்குகிறோம், ஆனால் காட்சியளிக்கக்கூடிய சாளரம் இல்லாமல். தனிப்பயன் பார்சர் இல்லை, போலி ரெண்டரிங் இல்லை. -
குக்கீகளை அல்லது உள்நுழைவு நிலையைப் பயன்படுத்தவும் (அமைக்கப்பட்டிருந்தால்).
உள்நுழைந்த அமர்வை தேவைப்படும் டெமோக்களுக்கு, உங்கள் குக்கிகளை மீண்டும் இயக்குகிறோம். எந்த வலுவான முயற்சியும் இல்லை, எந்த கடவுச்சொல் ஊகிப்பும் இல்லை, எங்கள் கட்டுப்பாட்டில் இல்லாத கணக்குகளை எடுக்கவும் இல்லை. -
பயனர் போல இலக்கு பக்கத்தை சரியாக ஏற்று.
HTML, CSS, JavaScript, எழுத்துருக்கள், படங்கள். நாங்கள் காத்திருக்கிறோம்networkidle2(https://pptr.dev/api/puppeteer.page.waitfornetworkidle) எனவே மெதுவான தொகுப்புகள் மற்றும் எழுத்துருக்கள் ஏற்றுதல் முடிக்க முடியும். -
Jit-TR துண்டை ஒரு அடியாக ஊக்குக.
எங்கள் காப்புரிமை நிலுவையில் உள்ள ரன்டைம் குறியீட்டைக் குறிக்கும் ஒரு ஸ்கிரிப்ட் குறிச்சொல்லை நாங்கள் சேர்க்கிறோம் – உதாரணமாக:. Jit-TR ரன்டைம் தொகுதி வெளிப்படுத்தப்பட்ட DOM (document.head மற்றும் document.body) ஐ நடைபயணம் செய்து, எடுக்கப்பட்ட பயனுள்ள தகவலை எங்கள் (அல்லது ஏதேனும்) சர்வருக்கு செயலாக்க அனுப்புகிறது, முடிவுகளை (மொழிபெயர்ப்பு, மேம்பாடு, அல்லது புதிய தகவல்) பெறுகிறது, காட்சியளிக்கும் உரையை மறுபதிவு செய்கிறது, மற்றும் அசல் தகவலின் மேல் புதிய அர்த்தங்களைச் சேர்க்கிறது. உள்ள கட்டுப்பாடுகள் எளிமையானவை: ஸ்கிரிப்ட்கள் அதிகரிக்கப்படலாம், ஆனால் புதிய அறிவுறுத்தல்கள் தளத்தின் சொந்த ஸ்கிரிப்ட்களுடன் ஒருபோதும் மோதக்கூடாது. இது பொதுவாக பயன்படுத்தி செயல்படுத்தப்படுகிறதுமியூட்டேஷன் ஆப்சர்வர்DOM-இல் தொடர்புடைய மாற்றங்களை கவனிக்க, சிறிய, குறிக்கோளான பாச்சுகளைப் பயன்படுத்தி புதுப்பிப்புகளைச் செய்ய, மற்றும் ஏதேனும் உள்ள செயலி தர்க்கம் அல்லது நிகழ்வு கையாளிகளைத் தொடாமல் இருக்க. -
விருப்பத்தேர்வுக்குரிய ஓட்டங்களை இயக்கவும்: குக்கீகள், கிளிக்குகள், மற்றும் ஸ்க்ரோல்.
உண்மையான பக்கங்கள் பெரும்பாலும் ஒரு அல்லது இரண்டு செயல்களை தேவைப்படும்: ஒரு குக்கி பேனரை மூடுதல், ஒரு மெனுவை திறத்தல், மேலும் சலுகைகளை ஏற்ற ஸ்க்ரோல் செய்தல். ஜிட்-ப்ரௌசர் ஒரு எளிய ஓட்டம் ஸ்கிரிப்டை இயக்க முடியும், எனவே அந்த கூறுகள் பிடிப்பதற்கு முன் காணக்கூடியவையாக இருக்கும். -
விருத்தி செய்யப்பட்ட வெளியீட்டை பிடிக்கவும்.
நாங்கள் சேமிக்கிறோம்:- விருந்தினர்கள் அல்லது தணிக்கைக்காக முழுமையாக மாற்றியமைக்கப்பட்ட HTML.
- சாத்தியமான தடைகள் அடையாளம் காண நேரமிடல் தடம்.
அதுவே எங்கள் HeadlessChrome101 இன் மையம். எந்த உலாவியிலும் உள்ளமைக்கப்பட்ட அடுக்கு ஆக புதிய அல்லது உள்ளமைக்கப்பட்ட தரவுகளை உலாவி எவ்வாறு கையாள முடியும் என்பதற்கான மனதின் மாதிரியே இது.
ஏன் இது வெறும் ஒரு பொம்மை ஸ்கிரிப்ட் அல்ல
Jit-Browser முக்கியமானது ஏனெனில் உலாவி நிலை அடுக்கு, உலாவி விற்பனையாளர்கள் ஏற்கனவே தினமும் பயன்படுத்தும் அதே துண்டுகளைக் கொண்டு கட்டப்பட முடியும் என்பதை இது நிரூபிக்கிறது, மேலும் இந்த அடுக்கு எங்கள் சொந்த Jit-TR ரன்டைம் உட்பட எந்த வெளிப்புற சேவையுடன் முழு கிளையன்ட்-சர்வர் தொடர்பை பாதுகாப்பாக நடத்த முடியும் என்பதையும் நிரூபிக்கிறது. இது SEO-வினை உணர்ந்த மேம்பாடுகளை நாம் சேர்க்கும் இடமாகவும் உள்ளது, உதாரணமாக rel="alternate" hreflang="..." இணைப்புகள் மற்றும் செறிவூட்டப்பட்ட sitemap.xml நுழைவுகள். நடைமுறையில், இது நாங்கள் HTML பகுதிகளுக்குள் விரிவாக்கப்பட்ட தகவல்களை வெளிப்படுத்த முடியும் என்பதைக் குறிக்கிறது இருக்கக்கூடிய பக்கத்தின் இடது அல்லது வலது பக்கத்தில் உள்ள கூறுகள், அல்லது மொழி தேர்வுகள் மற்றும் SmartSearch-ஐ அசலான அமைப்பு அல்லது ஸ்கிரிப்ட்களுடன் இடையூறு செய்யாமல் இணைக்கும் ஜாவாஸ்கிரிப்ட் மாடல்களைப் பயன்படுத்துவதன் மூலம்.
-
உண்மையான குரோம் இயந்திரம்.
எல்லாம் குரோமில் தானே இயங்குகிறது - வெறும் காட்சி சாளரம் இல்லாமல். உங்கள் பார்வையாளர்களுக்கு குரோமில் வேலை செய்கிறதானால், அது ஜிட்-பிரௌசரில் வேலை செய்கிறது. -
உள்ளடக்க பாதுகாப்பு கொள்கை பற்றிய விழிப்புணர்வு.
பெரும்பாலான தளங்கள் ஸ்கிரிப்ட்களை CSP மூலம் பூட்டுகின்றன. தலைகீழ் முறையில் நாங்கள் Chrome இன்setBypassCSP(true)(https://pptr.dev/api/puppeteer.page.setbypasscsp) பிடிப்பு சூழலில் Jit-TR ஐ ஊக்குவிக்க. எங்கள் தயாரிப்பு தளங்கள் எந்தவித பாதுகாப்பு கொள்கைகளையும் தளர்த்த தேவையில்லை. -
முழு நேரம் மற்றும் பதிவு.
நாங்கள் ஏவுகால நேரங்களை, பக்கம் ஏற்றும் நேரங்களை, Jit-TR தொடக்கத்தை, ஓட்டம் படிகளை, மற்றும் பிடிப்பை பதிவு செய்கிறோம். மில்லி விநாடிகள் எங்கு செல்கின்றன மற்றும் Jit-TR பக்கத்தில் உண்மையில் என்ன செய்கிறது என்பதை நீங்கள் காணலாம். -
கதை மற்றும் அடுக்கு பிரிப்பு.
இன்று, Jit-TR ஒரு தளத்தில் நீங்கள் சேர்க்கும் "ஒரு எளிய ஸ்கிரிப்ட்" ஆக இருக்கலாம். Jit-Browser இல், அதை எப்போதும் இயங்கும் ஒரு நிலையான அடுக்கு போல நடத்துகிறோம். இது ஒரு உலாவி விற்பனையாளர் அதை இயல்பாக இணைக்கக்கூடிய முறைக்கு மிகவும் அருகில் உள்ளது.
Jit-TR API ஏற்கனவே தீர்க்கும் விஷயம் என்ன
கடினமான பகுதி தலை இல்லாத குரோம் அல்ல. கடினமான பகுதி நேரடி, குழப்பமான வலைப்பக்கங்களை பாதுகாப்பான பன்மொழி பதிப்புகளாக நம்பகமாக மாற்றுவது. எங்கள் சொந்த உரிமையுள்ள ரன்டைம் api.jit-tr.com ஏற்கனவே அந்த வேலை செய்கிறது.
இன்று, API ரன்டைம் கையாளுகிறது:
-
மொழி தேர்வு.
இது போன்ற அளவுருக்களைப் படிக்கிறதுjittr=ES-419, விளிம்பு வழக்குகளை சாதாரணமாக்குகிறது, மற்றும் தேர்ந்தெடுக்கப்பட்ட மொழியை பதிவு செய்கிறது, உதாரணமாக:[Jit-TR] மொழி தேர்ந்தெடுக்கப்பட்டது → ES-419. -
DOM எடுக்கும், மொழிபெயர்ப்பு, மற்றும் அர்த்தமுள்ள மறுஎழுத்துகள்.
ரன்டைம் உண்மையான குரோம் DOM ஐ நடைபயிற்சி செய்து, காட்சியளிக்கக்கூடிய உரையை மட்டும் எடுத்து, ஒரு கட்டமைக்கப்பட்ட மொழிபெயர்ப்பு பயலோடை உருவாக்கி, முடிவுகளை பக்கத்தில் மீண்டும் எழுதுகிறது. அனைத்து கடினமான விளிம்பு வழக்குகளும் தானியங்கி: எமோஜி வரிசைகள், HTML அமைப்புகள், குறியீடுகள் மற்றும் இடைவெளி விதிகள், கலந்த மொழி சரங்கள், மற்றும் இடமிருந்து வலமாக / வலமிருந்து இடமாக மாறுதல். இது மொழி குறிப்பிட்ட ஸ்கிரிப்ட் தொகுதிகளை மீண்டும் எழுதுகிறது — உட்படமற்ற கட்டமைக்கப்பட்ட-தரவு குறிச்சொற்கள் — ஒவ்வொரு மொழிக்கும் தேடுபொறிகள் மற்றும் AI அமைப்புகளுக்கான சரியான, சுயாதீனமான, கச்சா மெட்டாடேட்டா இருப்பதை உறுதிசெய்யும். -
வாடிக்கையாளர் நடத்தை.
இது மொழி கொடிகளை உருவாக்குகிறது, பாதுகாப்பற்ற வேர் அடிப்படைகளை மதிக்கிறது, மற்றும் ஒற்றை பக்கம் பயன்பாடுகள் மற்றும் கட்டமைப்புகளுடன் மிகுந்த பாதுகாப்பாக விளையாடுகிறது.
இவை அனைத்தும் இன்று Jit-TR தளங்களில் ஏற்கனவே இயங்குகின்றன. Jit-Browser இதை ஒரு கட்டுப்படுத்தப்பட்ட தலைப்பில்லா சூழலில் எளிதாக மீண்டும் பயன்படுத்துகிறது.
நேசத்துடன் இணைந்த உலாவி அம்சத்திற்காக இன்னும் என்ன தேவைப்படுகிறது
நேசத்துடன் இணைந்த உலாவி அம்சத்திற்காக இன்னும் என்ன தேவைப்படுகிறது
Jit-Browser ஐ ஒரு உட்பொதிக்கப்பட்ட உலாவி அம்சமாக மாற்ற, யாருக்கும் ஒரு அதிசயம் தேவையில்லை - உலாவி இயந்திரங்கள் ஏற்கனவே புரிந்துகொள்ளும் சிறிய, நன்றாக வரையறுக்கப்பட்ட மாற்றங்களின் தொகுப்பை இடுவதற்கான திறன் மட்டுமே தேவை.
Jit=-Browser ஐ ஒரு உட்பொதிக்கப்பட்ட உலாவி அம்சமாக மாற்ற. இது ஒரு அதிசயம் அல்ல, உலாவிகள் ஏற்கனவே புரிந்துகொள்ளும் சிறிய மாற்றங்களின் தொகுப்பே.
-
எஞ்சினில் உள்ள ஒரு சொந்த ஹூக்.
இன்று நாங்கள் இதை ஹெட்லெஸ் குரோம் மூலம் ஒரு ஸ்கிரிப்டை செருகுவதன் மூலம் ஒத்திகை செய்கிறோம். ஒரு உண்மையான ஒருங்கிணைப்பு Jit-TR க்கு ஒரு தனித்துவமான மொழிபெயர்ப்பு இடத்தை வழங்கும், எனவே இது ரெண்டரிங் குழாய்களில் சரியான இடத்தில் DOM உரையைப் படிக்கவும் எழுதவும் முடியும். -
மொழி நோக்கத்தை வெளிப்படுத்த ஒரு நிலையான வழி.
நாங்கள் ஏற்கனவே பயன்படுத்துகிறோம்?jittr=மொழிமற்றும் குக்கீகள். ஒரு உலாவி நிலை தீர்வு உலாவி மொழி அமைப்புகள் மற்றும் "இந்த தளத்தை எப்போதும் ES-419 க்கு மொழிபெயர்க்கவும்" போன்ற பயனர் தேர்வுகளை மதிக்கக்கூடும். -
ஒரு தெளிவான பாதுகாப்பு மற்றும் தனியுரிமை கட்டமைப்பு.
உரைகள் சாதனத்தை விட்டு வெளியேறுவதற்கான விதிகள், எவ்வளவு நேரம் கேஷ் செய்யப்படலாம், மற்றும் தளங்கள் அல்லது பயனர்கள் எவ்வாறு விலக முடியும் என்பவை தெளிவாகவும் ஆவணமாகவும் இருக்க வேண்டும். உலாவியில் உள்ள ஒரு சொந்த செயலாக்கம் உண்மையில் தற்காலிக ஸ்கிரிப்ட்களைவிட பாதுகாப்பாக இருக்கலாம்.
உதாரணம்: HarmonyOS in ES-419
இங்கே செயல்பாட்டில் உள்ள குழாய்க்குழாய் பற்றிய ஒரு தெளிவான உதாரணம் உள்ளது.
நாங்கள் அழைக்கிறோம்:
getpageJtrBrowser \
"https://www.harmonyos.com/" \
"jittr=ES-419" \
null \
"ES-419/index.php"
ஜிட்-உலாவி:
- டாக்கர் உள்ளே தலைகீழ் குரோம் தொடங்குகிறது.
- சுமைகள்
https://www.harmonyos.com/. - ES-419 அளவுருவுடன் Jit-TR துண்டை ஊற்றுகிறது.
- Jit-TR காட்சியளிக்கும் சீன உரையை ஸ்பானிஷ் (லத்தீன் அமெரிக்கா) மொழியாக மொழிபெயர்க்க அனுமதிக்கவும்.
- முடிவை சேமிக்கிறது
ES-419\/index.php.
HarmonyOS தளம் மாற்றம் செய்ய தேவையில்லை. பயனர் பார்வையில், தளம் அவர்களின் மொழியை ஆதரிக்கிறது போலவே தெரிகிறது.
இந்தப் பக்கம் ஏன் உள்ளது
HeadlessChrome101 என்பது காட்டும் சுருக்கமாகும்:
- நாங்கள் உண்மையான உலாவி இயந்திரங்களையும் உண்மையான CSP விதிகளையும் பயன்படுத்துகிறோம்.
- நாங்கள் ஏற்கனவே ஒரு செயல்படும், சொந்தமான மொழிபெயர்ப்பு ரன்டைமைக் கொண்டுள்ளோம்.
- உள்ளூர் உலாவி அம்சத்திற்கான மீதமுள்ள இடைவெளி சிறியதாகவும் நன்றாக வரையறுக்கப்பட்டதாகவும் உள்ளது.
நீங்கள் உலாவிகள், செயல்பாட்டு முறைமைகள் அல்லது பெரிய தளங்களை உருவாக்கினால் மற்றும் உங்கள் பாதுகாப்பு மாதிரியை மதிக்கும் ஒரு உலகளாவிய பன்மொழி அடுக்கு வேண்டும் என்றால், நாங்கள் பேச தயாராக உள்ளோம். குறியீடு உள்ளது. நடத்தை அளவிடக்கூடியது. அடுத்த படி கூட்டாண்மை.