Giter Site home page Giter Site logo

winteach / pykib Goto Github PK

View Code? Open in Web Editor NEW
8.0 1.0 2.0 4.32 MB

QtWebEngine based minimal kiosk browser - all features opt-in customizable

Home Page: https://www.winteach.de/thinclients-rangee/pykib-kiosk-browser-fuer-windows-und-linux-systeme/

License: GNU General Public License v3.0

Python 7.24% JavaScript 87.22% HTML 1.66% CSS 3.88%
browser kiosk kiosk-mode minimal optional parameters pyqt5 qwebengineview opt-in customizable

pykib's Introduction

usage: pykib [-h] [-c CONFIGFILE] [-u URL] [-p PROXY] [-ppo PROXYPORT]
             [-pu PROXYUSERNAME] [-pp PROXYPASSWORD] [-amc ADDMEMORYCAP] [-d]
             [-dh DOWNLOADHANDLE [DOWNLOADHANDLE ...]] [-dp DOWNLOADPATH]
             [-eal] [-alu AUTOLOGONUSER] [-alp AUTOLOGONPASSWORD]
             [-ald AUTOLOGONDOMAIN] [-aluid AUTOLOGONUSERID]
             [-alpid AUTOLOGONPASSWORDID] [-aldid AUTOLOGONDOMAINID] [-es]
             [-sl SPELLCHECKINGLANGUAGE] [-eps] [-prm]
             [-sbl SETBROWSERLANGUAGE] [-scua] [-t TITLE] [-dt] [-rt] [-f]
             [-ic] [-m] [-v] [-szf SETZOOMFACTOR] [--no-sandbox]
             [--js-flags JS-FLAGS] [--single-process]
             [--remote-debugging-port REMOTE-DEBUGGING-PORT] [-md] [-sa] [-sn]
             [-g GEOMETRY [GEOMETRY ...]] [-a ADMINKEY]
             [-wl WHITELIST [WHITELIST ...]] [-art AUTORELOADTIMER] [-ama]
             [-awa] [-emd]
             [URL]

positional arguments:
  URL                   alternative to -u, --url

optional arguments:
  -h, --help            show this help message and exit
  -c CONFIGFILE, --configFile CONFIGFILE
                        Use this as configuration file - configured setting
                        will override command line arguments. The ini file
                        settings parameters are the same like the long form
                        command line arguments
  -u URL, --url URL     Start and Home URL
  -p PROXY, --proxy PROXY
                        Use this as HTTP Proxy
  -ppo PROXYPORT, --proxyPort PROXYPORT
                        Proxy Port
  -pu PROXYUSERNAME, --proxyUsername PROXYUSERNAME
                        Enter Proxy username if needed
  -pp PROXYPASSWORD, --proxyPassword PROXYPASSWORD
                        Enter Proxy password if needed
  -amc ADDMEMORYCAP, --addMemoryCap ADDMEMORYCAP
                        Can be set to a value in MB. If the browser needs more
                        than this amount of memory he will kill itself
  -d, --download        Enables download function
  -dh DOWNLOADHANDLE [DOWNLOADHANDLE ...], --downloadHandle DOWNLOADHANDLE [DOWNLOADHANDLE ...]
                        With this option, default behaviour for special file
                        extensions can be defined, this will also work when -d
                        is not defined. Format:
                        #extension#|#app_to_start#|#tmpdownloadpath#
  -dp DOWNLOADPATH, --downloadPath DOWNLOADPATH
                        Defines the start path for any download and upload
                        dialog
  -eal, --enableAutoLogon
                        Enables the autologon functionality, this function
                        requires at least autoLogonUser and autoLogonPassword
                        to be set. The Browser is preconfigured to work with
                        Citrix Webinterface, Citrix Storefront and RDWeb
                        Servers
  -alu AUTOLOGONUSER, --autoLogonUser AUTOLOGONUSER
                        Defines the username used for autologon
  -alp AUTOLOGONPASSWORD, --autoLogonPassword AUTOLOGONPASSWORD
                        Defines the password used for autologon
  -ald AUTOLOGONDOMAIN, --autoLogonDomain AUTOLOGONDOMAIN
                        Defines the domain name used for autologon. If a
                        domain name is set, but no value for
                        autoLogonDomainID, the domain will bei merged with the
                        username to domain\username
  -aluid AUTOLOGONUSERID, --autoLogonUserID AUTOLOGONUSERID
                        Defines the ID of the HTML Element in which the
                        username should be put in
  -alpid AUTOLOGONPASSWORDID, --autoLogonPasswordID AUTOLOGONPASSWORDID
                        Defines the ID of the HTML Element in which the
                        password should be put in
  -aldid AUTOLOGONDOMAINID, --autoLogonDomainID AUTOLOGONDOMAINID
                        Defines the ID of the HTML Element in which the domain
                        should be put in
  -es, --enablespellcheck
                        Enables spellchecking when set
  -sl SPELLCHECKINGLANGUAGE, --spellcheckinglanguage SPELLCHECKINGLANGUAGE
                        Defines the language for the spellcheck dictionary.
                        Default de_DE
  -eps, --enablepdfsupport
                        Enables the Option of viewing PDFs in the
                        BrowserWindow
  -prm, --pdfreadermode
                        if set the close button will close pykib complete
                        instead of only the pdf and the Download Button will
                        be labeld with 'save'
  -sbl SETBROWSERLANGUAGE, --setbrowserlanguage SETBROWSERLANGUAGE
                        Overrides the default Browser Language in format de
                        (for German), en (for English)....
  -scua, --setCitrixUserAgent
                        Overrides the default UserAgent for skipping citrix
                        receivers client detection
  -t TITLE, --title TITLE
                        Defines the Window Title
  -dt, --dynamicTitle   When enabled the window title will display the current
                        websites title
  -rt, --removeTitleBar
                        Removes the window title bar
  -f, --fullscreen      Start browser in fullscreen mode
  -ic, --ignoreCertificates
                        with this option HTTPS Warninigs will be ignored
  -m, --maximized       Start browser in a maximized window
  -v, --version         show program's version number and exit
  -szf SETZOOMFACTOR, --setZoomFactor SETZOOMFACTOR
                        Set Zoom Factor for Webpages in percent. Allowed
                        Values between 25 and 500
  --no-sandbox          Allows to run as root
  --js-flags JS-FLAGS   Allows setting js-flags
  --single-process      Allows to run the browser in one thread
  --remote-debugging-port REMOTE-DEBUGGING-PORT
                        Allows to run as root
  -md, --memoryDebug    Show informations about the browser current memory
                        usage
  -sa, --showAddressBar
                        Shows a Address Bar when set
  -sn, --showNavigationButtons
                        Shows Navigation Buttons when set
  -g GEOMETRY [GEOMETRY ...], --geometry GEOMETRY [GEOMETRY ...]
                        Set window geomety #left# #top# #width# #height#, when
                        using a multimonitor envireoment you can define the
                        monitor for fullscreen or maximized mode with #left#
                        #top#
  -a ADMINKEY, --enableAdminKey ADMINKEY
                        Enables the admin key SHIFT+STRG+ALT+A and defines a
                        Application which will be started when pushed
  -wl WHITELIST [WHITELIST ...], --whiteList WHITELIST [WHITELIST ...]
                        Enables the white List function. Only Urls which start
                        with elemtens from this list could be opend
  -art AUTORELOADTIMER, --autoReloadTimer AUTORELOADTIMER
                        Here you can configure a Timeout (in seconds) after
                        which the actives site gets reloaded
  -ama, --allowMicAccess
                        Allows all Websites to use your Microfon
  -awa, --allowWebcamAccess
                        Allows all Websites to use your Webcam
  -emd, --enableMouseDrag
                        Enable Single Click (Touch) website movement (js
                        injection)

example Usage:
        Save all .rdp files to /tmp/tmp.rdp and execute the script"/home/xfreerdp.sh /tmp/tmp.rdp", after that the file will be deleted:
            python3 pykib.py -dh "rdp|/home/xfreerdp.sh|/tmp" "rdp|rm|/tmp"
        Open the site www.winteach.de in fullscreen. With the Whiteliste Option no one will be able to leave this site
            python3 pykib.py -u https://www.winteach.de -f -wl "https://www.winteach.de"
        Open the site www.winteach.de maximized and show Adressbar and Navigation Buttons.
            python3 pykib.py -u https://www.winteach.de -m -sn -sa

pykib's People

Contributors

winteach avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Forkers

riamehdi retoiao

pykib's Issues

Windows Builds

Are Windows builds possible? I have a potential usecase for that.

Accept url as last parameter

Currently it is not possible to use Pykib as default browser, because it does not accept the url as last parameter (without -u).

It would be great if Pykib could be started like this:

pykib https://google.de

Page Reload

Currently it is not possible to reload a page. The browser has to be closed and reopened in order to force a page reload, when full kiosk mode is enabled.

Listening to F5 and/or Ctrl+R would be really usefull.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.