Luo omia verkkosovelluksia Pythonilla ja Qt:llä näiden yksinkertaisten ohjeiden avulla

Verkkosovellusten rakentaminen Pythonilla ja Qt:llä

Las web-sovellukset Ne ovat tulleet jäädäkseen, ja niitä käytetään yhä enemmän. Jonkin aikaa sitten Twitterin kaltaiset palvelut olivat hyvin erilaisia, nyt ne ovat eräänlaisia ​​mobiilisovelluksia, jotka mukautuvat sen laitteen näyttöön, jolla astumme sisään. Mutta näiden sovellusten haittapuoli on, että ne toimivat selaimessa, ja nykyään on vähän selaimia, jotka eivät ole aivan resurssiintensiivisiä. Voi olla, mutta entä jos olisi jotain vielä kevyempää, jopa enemmän mitä linux mint tarjoaa?

Toki voimme käyttää Chromium-pohjaista selainta ja luoda pikakuvakkeen tai asentaa sovelluksen, jolloin saamme kuin löysä välilehti, joka kuluttaa vähemmän resursseja kuin koko selain. On totta, että tämä on mahdollista, mutta riippuen siitä, mitä verkkoa on ladattava, paino voi vaihdella, eikä se mielestäni ole ollenkaan pieni. Qt Se tarjoaa widgetin, joka on tarkoitettu verkkosisällön näyttämiseen, ja salaisuus tässä on luoda yksinkertainen sovellus, joka lataa kyseisen verkon Pythonilla. Se on mahdollista muilla kielillä, mutta Python on edullisin.

Kuinka luoda verkkosovellus Pythonilla

Jotta voit jatkaa, sinulla on oltava useita paketteja asennettuna. Tietenkin, jos haluamme käyttää verkkosovellusta Python, Tarvitsemme Python; jakelumme version on oltava kelvollinen. Myös PyQt5-webengine-paketti on oltava asennettuna (PyQt6 on myös voimassa, mutta koodi vaihtelee), ja sen tarkka nimi riippuu käyttämästämme jakelusta. Arch Linuxissa ja johdannaisissa se löytyy muodossa python-pyqt5-webengine, ja Ubuntussa ja johdannaisissa se on yleensä python3-pyqt5.qtwebengine. Kun nämä paketit on asennettu, meillä on kaikki tarvittava omien verkkosovellustemme luomiseen. Seuraavat vaiheet olisivat seuraavat:

  1. Luomme uuden tekstitiedoston. Nimellä ei ole väliä, mutta sen arvoista on olla kuvaava, jotta tiedämme, mikä se on. Laajennuksen on oltava .py, jos aiomme käyttää Pythonia.
  2. Liitämme tämän koodin myöhemmin selittäväksi:
#!/usr/bin/env python3 PyQt5:stä tuo QtCore, QtGui, QtWidgetit PyQt5:stä tuo QtWebEngineWidgets-luokka Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectObjectName("set100 MainWindowy". , 100, 1200) MainWindow.setMinimumSize(760, 400) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") =centralViewbEntwidget.EntwitLayout. .QWebEngineView(self.centralwidget) self.verticalLayout.addWidget(self.webEngineView) self.verticalLayout.setContentsMargins(500, 0, 0, 0) self.webEngineView.setUrl(QtCore.QUrl("""https://pluto. )) self.webEngineView.setObjectName("webEngineView") MainWindow.setCentralWidget(self.centralwidget) if __name__ == "__main__": tuonti sys app = QtWidgets.QApplication(sys.argv) MainWindows = QtdowinWindows () ui.setupUi(MainWindow) MainWindow.show() sys.exit(app.exec_())

Pythonina sinun on oltava varovainen sisennyksen kanssa, eli välilyöntien kanssa vasemmasta reunasta ensimmäiseen kirjaimeen. Jos kaikki samaan luokkaan tai funktioon kuuluva ei ole oikein ja samalla korkeudella, Python havaitsee sen kuuluvan jonnekin muualle eikä toimi. Mutta mennään askel askeleelta.

  1. Oletetaan, että haluamme luoda Pluto TV -sovelluksen ja että tiedostomme on nimeltään pluto.py. Napsautamme toissijaisesti pluto.py-osoitetta, siirrymme asetuksiin ja merkitsemme sen suoritettavaksi. Voimme myös avata terminaalin ja kirjoittaa:
chmod +x pluto.py
  1. Nyt meidän pitäisi pystyä avaamaan se kaksoisnapsautuksella, mutta se kannattaa tehdä ensin terminaalista. Avaamme yhden ja kirjoitamme python pluto.py. Joissakin jakeluissa voi olla tarpeen vaihtaa "python" muotoon "python3".
  2. Jos näemme sen avautuvan, verkkosovelluksemme on jo luotu. Voimme luoda .desktop-tiedoston, joka näkyy sovellusvalikossa tai missä tahansa, mutta sovellus olisi jo luotu. Päätteessä näkyvät virheilmoitukset voidaan jättää huomiotta, jos sovellus toimii.

koodin selittämistä

Yllä olevasta koodista ensimmäinen rivi on "shebang", joka osoittaa, mikä avaa tiedoston. Se on toiminut minulle sen kanssa missä tahansa Linux-distrossa, mutta se voi vaihdella joissakin. Se sanoo, että avaa Pythonilla. Sitten luodaan luokka, pääikkunaobjekti. Sisällämme on toiminto, joka näyttää käyttöliittymän. Menetelmät .setGeometry() ja .setMinimumSize() ovat mitkä mitat sillä on avattaessa ja mikä on vähimmäiskoko. Kohdassa .setGeometry() on myös ilmoitettava kaksi numeroa (100,100); muut ovat mitat. Sitten tulevat rivit, jotka luovat widgetin verkkosivun katselua varten, ja viimeinen asia (jos __name__…) on se, mikä käynnistää sovelluksen. Verkkosovellus tulee olemaan se yksi QUrl-menetelmän ympärillä olevien lainausmerkkien välissä.

Huomautus: verkkosovellukset näytetään peruskatseluohjelmassa

Jos joku ajattelee, että tämä on parempi kuin, en tiedä, Photopean asentaminen Chromium-pohjaiseen selaimeen, unohda se. Tietenkin näitä verkkosovelluksia voidaan parantaa toimimaan samalla tavalla kuin selaimessa, mutta ei otsikon yksinkertaisilla vaiheilla. Tässä on sovelluksia, kuten YouTube, Pluto TV, Twitter... mutta et voi ladata tiedostoja, ei tallenna salasanoja tai voi asentaa laajennuksia.

Parasta tässä on, että verkkosovellus juuri siksi, että se on vain perus- ja rajoitettu katseluohjelma kuluttaa vähemmän resursseja kuin Chromium. Mitä tulee Photopeaan, koska siinä ei ole widgetejä, jotka kysyvät, mihin asiakirjat tallennetaan, eikä mitään toimintoa, joka saa aikaan niiden kirjoittamisen kiintolevylle, joten kuvia ei voi tallentaa. Olen kokeillut ja niitä voi nostaa vetämällä ikkunan sisällä, mutta ei laskea. Tässä nimenomaisessa tapauksessa voidaan jakaa painos, kopioida sen meille antama linkki ja avata se muualle, mutta linkki avaa Photopean... Sanoin jo, se on perusasia.

Mutta perus ei ole turhaa, ja jos se voi auttaa jotakuta, olen iloinen.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastaa tiedoista: AB Internet Networks 2008 SL
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.