Вэб ба Вэб хөтчүүд

Терминалаас гадна вэб хөтөч бол таны хамгийн их цаг зарцуулдаг хэрэгслүүдийн нэг юм. Тиймээс үүнийг хэрхэн үр ашигтай ашиглах талаар суралцах нь маш чухал юм.

Гарын товчлолууд (Shortcuts)

Вэб хөтөч дээр хулганаар байнга товших нь хамгийн хурдан арга биш тул нийтлэг гарын товчлолуудтай танилцах нь урт хугацаандаа маш их хугацаа хэмнэдэг.

Хайлтын операторууд (Search operators)

Google эсвэл DuckDuckGo зэрэг хайлтын системүүд илүү нарийвчилсан хайлт хийх боломжийг олгодог хайлтын операторуудыг дэмждэг:

Илүү дэлгэрэнгүй жагсаалтыг Google болон DuckDuckGo хайлтын системүүдийн зааварчилгаанаас үзэж болно.

Хайлт хийхээс гадна хайлтын мөр (address bar) нь маш хүчирхэг хэрэгсэл юм. Ихэнх вэб хөтчүүд вэбсайтуудын хайлтын системийг автоматаар таньж хадгалдаг. Түлхүүр үгийн тохиргоог өөрчилснөөр:

Жишээлбэл, та y ХАЙХ ҮГС гэж бичээд шууд YouTube дотроос хайлт хийхээр тохируулж болно.

Түүнчлэн, хэрэв та өөрийн домэйн нэртэй бол домэйн бүртгэгчээрээ дамжуулан дэд домэйн чиглүүлэлт тохируулж болно. Жишээлбэл, би https://ht.josejg.com хаягийг энэхүү хичээлийн вэбсайт руу чиглүүлсэн. Ингэснээр би зөвхөн ht. гэж бичихэд хайлтын мөр автоматаар гүйцээж харуулдаг. Энэхүү тохиргооны нэг сайн тал нь хавчуургаас (bookmarks) ялгаатай нь ямар ч хөтөч дээр ажиллах болно.

Нууцлалын өргөтгөлүүд (Privacy extensions)

Өнөө үед вэбээр аялах нь сурталчилгаануудаас болоод төвөгтэй, мөн мөрдөгчдөөс (trackers) болоод аюулгүй байдалд сөргөөр нөлөөлж болдог. Сайн сурталчилгаа хаагч (adblocker) нь зөвхөн сурталчилгааг хаагаад зогсохгүй хар жагсаалтад орсон сэжигтэй, хортой вэбсайтуудыг бас хаадаг. Мөн тэд вэбээс илгээх хүсэлтийн тоог багасгаснаар хуудас ачаалах хугацааг хурдасгадаг. Зарим зөвлөмж:

Ийм төрлийн илүү олон өргөтгөлүүдийг эндээс харах боломжтой.

Загварыг өөрчлөх (Style customization)

Вэб хөтөч бол зөвхөн таны компьютер дээр ажиллаж буй нэгэн программ хангамж тул тэд юу харуулах, хэрхэн ажиллахыг эцэст нь та шийдэх боломжтой. Үүний нэг жишээ бол өөрийн гэсэн загвар тохируулах явдал юм. Хөтчүүд вэб хуудасны загварыг тодорхойлоход Cascading Style Sheets буюу CSS-ийг ашигладаг.

Та вэбсайтын эх кодыг хөтчийнхөө inspect (шинжих) хэрэгслээр шалгаж, агуулга болон загварыг түр зуур өөрчлөх боломжтой (энэ нь та яагаад вэб хуудасны зурганд хэзээ ч итгэж болохгүйн бас нэг шалтгаан юм).

Хэрэв та вэб хуудасны загварыг байнга өөрчилж хадгалахыг хүсвэл өргөтгөл ашиглах шаардлагатай. Бидний зөвлөх хэрэгсэл бол Stylus (Firefox, Chrome) юм.

Жишээлбэл, бид энэхүү хичээлийн вэбсайтад зориулж дараах загварыг бичиж болно:

body {
    background-color: #2d2d2d;
    color: #eee;
    font-family: Fira Code;
    font-size: 16pt;
}

a:link {
    text-decoration: none;
    color: #0a0;
}

Мөн Stylus-ийг ашиглан бусад хэрэглэгчдийн бичиж userstyles.org дээр нийтэлсэн бэлэн загваруудыг олж ашиглаж болно. Жишээ нь, ихэнх түгээмэл вэбсайтуудад зориулсан харанхуй сэдэв байдаг. Дашрамд дурдахад, Stylish өргөтгөлийг бүү ашиглаарай, учир нь энэ нь хэрэглэгчийн өгөгдлийг алдагдуулдаг болох нь тогтоогдсон (эндээс дэлгэрэнгүй уншина уу).

Функциональ ажиллагааг өөрчлөх (Functionality Customization)

Та загварыг өөрчилдөг шиг вэбсайтын ажиллагааг ч бас өөрийн JavaScript кодоор өөрчилж, түүнийгээ Tampermonkey зэрэг хөтчийн өргөтгөлүүдийг ашиглан ажиллуулж болно.

Жишээлбэл, дараах скрипт нь J болон K товчлууруудыг ашиглан Vim шиг дээш доош гүйх боломжийг олгодог:

// ==UserScript==
// @name         VIM HT
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Vim JK for our website
// @author       You
// @match        https://hacker-tools.github.io/*
// @grant        none
// ==/UserScript==


(function() {
    'use strict';

    window.onkeyup = function(e) {
        var key = e.keyCode ? e.keyCode : e.which;

        if (key == 74) { // J нь 74-р товчлуур
            window.scrollBy(0,500);;
        }else if (key == 75) { // K нь 75-р товчлуур
            window.scrollBy(0,-500);;
        }
    }
})();

Мөн OpenUserJS болон Greasy Fork зэрэг бэлэн скриптийн сангууд байдаг. Гэхдээ анхааруулж хэлэхэд, бусдын бичсэн скриптийг суулгах нь маш аюултай бөгөөд тэдгээр нь таны зээлийн картын дугаарыг хулгайлах зэрэг ямар ч үйлдэл хийх чадвартай байдаг. Кодыг өөрөө бүрэн уншиж ойлгож, ямар ч сэжигтэй зүйл хийгээгүй гэдэгт бүрэн итгэлтэй болохоос нааш хэзээ ч битгий скрипт суулгаарай. Загварыг нь нууцалсан эсвэл унших боломжгүй болгож шахсан кодыг хэзээ ч бүү суулгаарай!

Вэб API-нууд (Web APIs)

Вэб үйлчилгээнүүд нь вэб хүсэлтүүдээр дамжуулан үйлчилгээтэй харилцах боломжийг олгодог программчлалын интерфэйсийг олгох нь улам бүр түгээмэл болж байна. Энэ сэдэвтэй илүү нарийвчлан танилцахыг хүсвэл эндээс үзнэ үү. Онлайнаар олон нийтийн нээлттэй API-нууд маш олноороо байдаг. Вэб API нь маш олон зорилгоор хэрэг болдог:

function c() {
    url='https://www.google.com/complete/search?client=hp&hl=en&xhr=t'
    # Санамж: UTF-8 өгөгдөл авахын тулд user-agent-ийг заавал зааж өгөх ёстой!
    curl -H 'user-agent: Mozilla/5.0' -sSG --data-urlencode "q=$*" "$url" |
        jq -r ".[1][][0]" |
        sed 's,</\?b>,,g'
}

Вэб автоматжуулалт (Web Automation)

Заримдаа вэб API нь хангалтгүй байдаг. Хэрэв зөвхөн унших шаардлагатай бол pup гэх мэт HTML задлан шинжлэх эсвэл Python-ийн BeautifulSoup зэрэг санг ашиглаж болно. Гэвч хэрэв хуудастай интерактив харилцах эсвэл JavaScript ажиллуулах шаардлагатай бол тэдгээр нь тус болохгүй бөгөөд WebDriver хэрэглэгддэг.

Жишээ болгон дараах Python скрипт нь Wayback Machine дээр вэб хаяг бичиж хадгалах үйлдлийг дуурайлган автоматжуулж байна:

from selenium.webdriver import Firefox
from selenium.webdriver.common.keys import Keys


def snapshot_wayback(driver, url):

    driver.get("https://web.archive.org/")
    elem = driver.find_element_by_class_name('web-save-url-input')
    elem.clear()
    elem.send_keys(url)
    elem.send_keys(Keys.RETURN)
    driver.close()


driver = Firefox()
url = 'https://hacker-tools.github.io'
snapshot_wayback(driver, url)

Дасгалууд

  1. Өөрийн вэб хөтөч дээрээ байнга ашигладаг хайлтын системийнхээ түлхүүр үгийг өөрчлөн тохируулаарай.

  2. Дээр дурдсан өргөтгөлүүдийг суулгаарай. uBlock Origin эсвэл Privacy Badger-ийг тодорхой вэбсайт дээр хэрхэн идэвхгүй болгохыг судалж үзээрэй. Юу өөрчлөгдөж байна вэ? YouTube гэх мэт олон сурталчилгаатай сайт дээр туршиж үзээрэй.

  3. Stylus-ийг суулгаад дээр өгөгдсөн CSS-ийг ашиглан хичээлийн вэбсайтад зориулсан загвар бичээрэй. Нийтлэг програмчлалын тэмдэгтүүд болох = == === >= => ++ /= ~=-ийг бичээд үсгийн фонтыг Fira Code болгоход тэд хэрхэн харагдаж байна вэ? (Илүүг мэдэхийн тулд “programming font ligatures” гэж хайгаарай).

  4. Өөрийн хот/бүс нутгийн цаг агаарын мэдээллийг авах боломжтой вэб API-ийг олж ашиглаарай.

  5. Selenium зэрэг WebDriver программ хангамжийг ашиглан вэб хөтөч дээрээ байнга хийдэг давтагдсан гараар хийх үйлдлээ автоматжуулаарай.


Энэ хуудсыг засварлах.

Лиценз: CC BY-NC-SA.