જિટ-બ્રાઉઝર જિટ-4 પ્લેટફોર્મનો ભાગ EN-CA |

HeadlessChrome101: કેવી રીતે Jit-Browser Chrome ને સંપૂર્ણ મલ્ટી-ફંક્શન બ્રાઉઝર-સર્વર-બ્રાઉઝર લેયર માં ફેરવે છે

આ એક સરળ ભાષામાં સમજાવટ છે કે Jit-Browser હેડલેસ Chrome સાથે શું કરે છે, તે કેવી રીતે માલિકી Jit-TR રનટાઇમનો ઉપયોગ કરે છે, અને આને પ્રથમ-શ્રેણી બ્રાઉઝર ફીચર બનાવવા માટે શું હજુ પણ જરૂરી છે, માત્ર એક સ્ક્રિપ્ટ નહીં.

સરળ સ્ક્રીનશોટ ટૂલથી Jit-Browser સુધી

અમે એક નાનું કમાન્ડ-લાઇન ટૂલથી શરૂ કર્યું: getpage https://example.com page.png. તે Chrome ને Docker કન્ટેનરમાં શરૂ કરે છે, પેજમાંથી રેન્ડર કરેલ example.com નો સ્ક્રીનશોટ લે છે, અને બહાર નીકળે છે.

ઉપયોગી પ્રૂફ ઓફ કન્સેપ્ટ. દરેક કૉલ એક ઠંડા પ્રારંભ હતો. તે અનુવાદ, સત્રો, અથવા સ્થિતિ વિશે કશું જાણતું ન હતું. તે માત્ર એક હેડલેસ કેમેરા હતો.

Jit-Browser આગળનું પગલું છે. તે હજી પણ વાસ્તવિક Chrome નો ઉપયોગ કરે છે, પરંતુ હવે:

  • તે પેજની અંદર શું થાય છે તે લોગ કરે છે.
  • તે અનુવાદ લેયર તરીકે Jit-TR સ્ક્રિપ્ટને ઇન્જેક્ટ કરે છે.
  • તે કૂકી બેનર્સ અથવા ડ્રોપડાઉન્સ જેવા સરળ પ્રવાહોને અનુસરી શકે છે.
  • તે સંપૂર્ણ અનુવાદિત HTML કૅપ્ચર કરે છે, માત્ર સ્ક્રીનશોટ નહીં.

આ પેજ તે પાઇપલાઇનને સમજાવે છે જેથી તમે જોઈ શકો કે અમે હાથ હલાવી રહ્યા નથી. અમે બતાવી રહ્યા છીએ કે બ્રાઉઝર-સ્તરની બહુભાષી લેયર વાસ્તવમાં કેવી રીતે કાર્ય કરી શકે છે.

Jit-Browser પાઇપલાઇન 6 પગલાંમાં

ઉચ્ચ સ્તરે, દરેક કૅપ્ચર એક જ ક્રમનું અનુસરણ કરે છે.

  1. Docker અંદર વાસ્તવિક Chrome (હેડલેસ) લોન્ચ કરો.
    અમે Puppeteer (pptr.dev) નો ઉપયોગ કરીએ છીએ તે જ એન્જિન શરૂ કરવા માટે જે સામાન્ય બ્રાઉઝર્સને શક્તિ આપે છે, પરંતુ વિઝિબલ વિન્ડો વિના. કોઈ કસ્ટમ પાર્સર નથી, કોઈ નકલી રેન્ડરિંગ નથી.
  2. કૂકીઝ અથવા લૉગિન સ્થિતિ લાગુ કરો (જો કૉન્ફિગર કરેલ હોય).
    ડેમોઝ માટે જે લૉગ ઇન સત્રની જરૂર છે, અમે તમારી કૂકીઝ ફરીથી ચલાવીએ છીએ. કોઈ બળજબરીથી, કોઈ પાસવર્ડ ગેસિંગ, કોઈ સ્ક્રેપિંગ એકાઉન્ટ્સ જે અમે નિયંત્રિત નથી.
  3. લક્ષ્ય પેજને વપરાશકર્તા જેમ જ લોડ કરો.
    HTML, CSS, JavaScript, ફૉન્ટ્સ, છબીઓ. અમે રાહ જોતા networkidle2 (https://pptr.dev/api/puppeteer.page.waitfornetworkidle) જેથી ધીમા બંડલ્સ અને ફૉન્ટ્સ લોડિંગ પૂર્ણ કરી શકે.
  4. Jit-TR સ્નિપેટને લેયર તરીકે ઇન્જેક્ટ કરો.
    અમે અમારી પેટન્ટ-પેન્ડિંગ રનટાઇમ કોડ તરફ સંકેત આપતી સ્ક્રિપ્ટ ટૅગ ઉમેરીએ છીએ - ઉદાહરણ તરીકે: