Képzeljen el egy kora reggelt, amikor egy forró csésze friss kávét kortyolgat, és számítógépe felolvassa Önnek a legfrissebb híreket – mindezt önmagában. Hát nem hangzik elképesztően?

Nos, a Python segítségével elkészítheti saját, személyre szabott hírolvasóját, amely felolvassa az összes legfontosabb címet, az egyes címsorok kivonataival együtt. Igen ez így van. A megfelelő könyvtárak használatával a Python elvégezheti az összes reggeli rutinját anélkül, hogy minden egyes szót egyedül kellene elolvasnia.

Így írhatja meg ezt a kódot, és módosíthatja kedvenc hírwebhelyére.

A kód futtatásának előfeltételei

Mielőtt belevág, és elkezdi írni a kódot, teljesítenie kell néhány előfeltételt. Ezek néhány nagyon alapvető követelmény, amelyek megkönnyíthetik és hatékonyabbá tehetik a Python használatát.

  1. Piton: Jó döntés lenne a Python legújabb verziójának telepítése. Bármely Python IDE-t telepíthet a legjobb eredmény érdekében.
  2. Híroldal/internet hozzáférés: Mivel a Python kód beolvassa kedvenc webhelyének legfelső főcímeit, biztosítania kell, hogy a kód futtatása közben hozzáférjen a webhelyhez.
instagram viewer

A teljes kód a Jupyter Notebookban van írva, amely egy népszerű Python IDE ehhez az útmutatóhoz. Ezenkívül az India Today hírwebhelye a mintakódon belül van kódolva.

A Jupyter Notebook letöltéséhez használhatja az anaconda csomag részeként, vagy töltsön le egy önálló verziót a rendszerére.

Letöltés:Anakonda | Jupyter jegyzetfüzet

Minden további nélkül ássuk be mélyebben a kódot.

A kód írása Pythonban

A kezdéshez importálnia kell néhány Python-könyvtárat, amelyek mindegyike más-más célt szolgál.

importálja a win32com.client fájlt wincl néven
innen: urllib.request import urlopen as ureq
a bs4 import BeautifulSoup levesként
sp = wincl. Feladás ("SAPI.spVoice")

Ahol:

  • win32com.client: Ez a könyvtár kölcsönhatásba lép a Windows-eszközökkel, és zökkenőmentesen futtatja a Python programokat.
  • urllib.request: Ez a könyvtár kezeli a kérelem modulból származó URL-értékeket.
  • bs4: A BS4 könyvtár tartalmazza a Beautiful Soup funkciót, amely Python használatával adatokat kapar a webhelyekről.
  • sp = wincl. Feladás ("SAPI.spVoice"): Aktiválja a Hangutasításokat a Windows rendszerben.

Ez a kód csak Windows rendszeren fog működni, mivel Ön a win32.com.client könyvtárat fogja hívni.

Ezután meg kell határoznia a webhely URL-címét (hivatkozását) a url változó, amely a Python memóriájában van tárolva.

url = https://www.indiatoday.in/top-stories

Hozzon létre egy új változó klienst az URL megnyitási parancs tárolásához.

kliens = ureq (url)
nyomtatás (kliens)

ahol:

  • ügyfél: Új változó.
  • ureq: Az urllib.request fájlból importált Python függvény, amely megnyitja a tárolt URL-t.

Mivel megnyitotta az URL-t a memóriában, ideje ellenőrizni, hogy a kérdéses webhely engedélyezi-e a nem biztonságos Python-kapcsolatokat. Kinyomtathatja az ügyfélváltozót, és ellenőrizheti a kimenetet.

A print paranccsal két lehetőség van:

  • HTTP hiba: Ha egy webhely biztonságos, a tartalmat nem lehet lekaparni Python használatával.
  • Kódrészlet: Ha egy kódrészletet ad vissza a webhely futtatása után, feltételezze, hogy könnyen meg tudja húzni a címsorokat.

Miután meghatározta a hírwebhely URL-jét az URL parancsban, ideje importálni a HTML-kódot egy változóba.

page_html = kliens.read()
nyomtatás (page_html)

Elővigyázatossági lépésként ki kell nyomtatnia a webhely Pythonba importált HTML-kódját. Ezt a kódot akár a webhely kódjával is egyeztetheti, amely a következő alatt található Vizsgálja meg választási lehetőség.

A kód konvertálása előtt be kell zárnia a webhelyet a Python memóriájából a close paranccsal.

client.close()

Mivel a HTML-kódot egy Python-változóba importálta, át kell konvertálnia Python-olvasható formátumba a megtalálja és Találd meg mindet parancsokat a kulcsszavak kereséséhez.

A következő parancsot adhatja át a HTML kód konvertálásához:

page_soup = leves (page_html, "html.parser")

Ahol:

  • page_soup: Új változó.
  • leves: Alias ​​a Gyönyörű leves modul.
  • page_html: Változó, amely a webhely HTML-kódját tartalmazza.
  • html_parser: Alapértelmezett szintaxis a HTML-kód konvertálásához.

Ha a kód készen áll a használatra, ideje megvizsgálni a webhely HTML-kódját, és elkezdeni keresni a címsor kulcsszavait.

Ehhez kattintson a jobb gombbal bárhol a webhelyen, majd kattintson a Vizsgálat elemre. Ezzel megnyílik a kérdéses webhely HTML-kódja.

A webhely kódablakában görgessen körbe, amíg meg nem találja a címsorokat tároló tárolócímkéket.

Ezeket a nézet-tartalom címkéket az India Today webhelyen. Az egyes hírwebhelyek tárolói eltérőek, de viszonylag könnyen navigálhat a kódban.

cikkek = page_soup.find("div", { "class": "view-content" })

Végül rögzítenie kell az alcímkéket, amelyek a Python által felolvasott fő címsorokat tartalmazzák.

cikkek = cikkek.findAll("div", {"osztály": "kategória-lista"})

A nézettartalom-tároló több címsort tartalmaz, a címsorok külső héja.

A H2 címkék és az egyes címsorokhoz tartozó részletek rögzítéséhez ciklust kell futtatnia.

i = 1
x-re a cikkekben:
cím = x.find("h2").szöveg
para = x.find("p").szöveg
nyomtatás (i, cím, "
", "
", para, "
", "
")
sp. Beszélj (cím)
sp. Beszélj (para)
i=i+1

Ahol:

  • én: Új számlálóváltozó, amely automatikusan növekszik.
  • cím: Új változó a címsor mentéséhez (h2).
  • para: Új változó az egyes H2-ekhez társított bekezdések tárolására.
  • nyomtatás: A főcím és a paragrafus címe a Python felületén lesz kinyomtatva.
  • sp. Beszélj (cím): A Python minden tárolt címet felolvas.
  • sp. Beszélj (para): A Python minden tárolt bekezdésrészletet felolvas.
  • i = i+1: Ez a parancs automatikusan megnöveli a Python felületén megjelenő minden egyes címsorhoz társított sorozatszámot.

A Python Beautiful Soup moduljának használata a napi hírek olvasásához

Minden alkalommal, amikor lefuttatja a kódot, a rendszer letölti a hírwebhelyről a friss címeket, mielőtt felolvassák őket. A Python a kódkészlet minden egyes futtatásakor végrehajtja a kódot, így folyamatosan tájékoztatja Önt a webhelyen történt változásokról.

A Python továbbra is megjeleníti és felolvassa a régebbi címsorokat, amíg nem frissíti és újra lefuttatja a kódot.

A Python használata a napi főcímek felolvasására egyszerű

A Python, mint nyílt forráskódú nyelv, számos eszközt kínál, mint például a Beautiful Soup, a Selenium és más keretrendszerek – kezdőknek és haladóknak egyaránt.

Ha napi híreit hangon szeretné megkapni, a Python ezt megkönnyíti. Ennek a nyelvnek a tanulása segíthet abban is, hogy minden területen jobb programozóvá váljon.

10 hasznos eszköz Python fejlesztők számára

Akár Python-eszközökre van szüksége adattudományhoz, gépi tanuláshoz, webfejlesztéshez vagy bármi máshoz, ez a lista mindent megtalál.

Olvassa el a következőt

RészvényCsipogEmail
Kapcsolódó témák
  • Programozás
  • Piton
  • hírek
  • Számítógépes tippek
  • Programozás
A szerzőről
Gaurav Siyal (56 publikált cikk)

Gaurav Siyal két éves írási tapasztalattal rendelkezik, számos digitális marketingcégnek ír és szoftver-életciklus-dokumentumokat írt.

Továbbiak Gaurav Siyaltól

Iratkozzon fel hírlevelünkre

Csatlakozzon hírlevelünkhöz műszaki tippekért, ismertetőkért, ingyenes e-könyvekért és exkluzív ajánlatokért!

Kattintson ide az előfizetéshez