Jit-Browser Bahagi ng Jit-4 platform EN-CA |

HeadlessChrome101: Paano Ginagawa ng Jit-Browser ang Chrome na Isang Ganap na Multi-Function Browser–Server-Browser Layer

Ito ay isang walkthrough sa simpleng wika kung ano ang ginagawa ng Jit-Browser sa headless Chrome, kung paano nito ginagamit ang proprietary Jit-TR runtime, at kung ano pa ang kinakailangan upang gawing isang first-class na tampok ng browser ito sa halip na isa lamang ibang script.

Mula sa isang simpleng screenshot tool patungo sa Jit-Browser

Nagsimula kami sa isang maliit na command-line tool: getpage https://example.com page.png. Nagpatakbo ito ng Chrome sa isang Docker container, kumuha ng screenshot ng rendered example.com mula sa page, at umalis.

Kapaki-pakinabang na patunay ng konsepto. Bawat tawag ay isang malamig na pagsisimula. Wala itong kaalaman tungkol sa pagsasalin, mga sesyon, o estado. Isa lamang itong headless camera.

Ang Jit-Browser ay ang susunod na hakbang. Gumagamit pa rin ito ng tunay na Chrome, ngunit ngayon:

  • Naglilista ito ng mga nangyayari sa loob ng page.
  • Ine-inject nito ang Jit-TR script bilang isang translation layer.
  • Maaari itong sundan ang mga simpleng daloy tulad ng cookie banners o dropdowns.
  • Nahuhuli nito ang ganap na isinasaling HTML, hindi lamang isang screenshot.

Ipinaliwanag ng pahinang ito ang pipeline na iyon upang makita mo na hindi kami nag-aangkin. Ipinapakita namin kung paano talagang gumagana ang isang multilingual layer sa antas ng browser.

Ang Jit-Browser pipeline sa 6 na hakbang

Sa mataas na antas, bawat capture ay sumusunod sa parehong pagkakasunod-sunod.

  1. Ilunsad ang tunay na Chrome (headless) sa loob ng Docker.
    Gumagamit kami ng Puppeteer (pptr.dev) upang simulan ang parehong engine na nagpapagana sa mga normal na browser, ngunit walang nakikitang bintana. Walang custom parser, walang pekeng rendering.
  2. I-apply ang cookies o login state (kung naka-configure).
    Para sa mga demo na nangangailangan ng naka-log in na sesyon, nire-replay namin ang iyong cookies. Walang brute force, walang password guessing, walang scraping ng mga account na hindi namin kontrolado.
  3. I-load ang target na pahina nang eksakto tulad ng isang user.
    HTML, CSS, JavaScript, fonts, images. Naghihintay kami para sa networkidle2 (https://pptr.dev/api/puppeteer.page.waitfornetworkidle) upang makumpleto ang pag-load ng mga mabagal na bundle at fonts.
  4. Ine-inject ang Jit-TR snippet bilang isang layer.
    Nagdadagdag kami ng script tag na tumuturo sa aming patent-pending runtime code – halimbawa: