Kujutage ette varahommikut, kus rüübate kuuma tassi värsket kohvi ja teie arvuti loeb teile ette uusimad pealkirjad – kõik üksinda. Kas see ei kõla hämmastavalt?
Noh, Pythoni abil saate luua oma isikupärastatud uudistelugeja, mis loeb teie eest ette kõik populaarsemad pealkirjad koos väljavõtetega igast pealkirjast. Jah see on õige. Õigeid teeke kasutades saate Pythoni teha kõik teie hommikused rutiinid, ilma et peaksite iga sõna üksi lugema.
Siit saate teada, kuidas saate selle koodi kirjutada ja oma lemmikuudiste veebisaidile kohandada.
Koodi käitamise eeltingimused
Enne kui hakkate koodi kirjutama, peate täitma mõned eeltingimused. Need on mõned väga põhinõuded, mille abil saab Pythoni kasutamist lihtsamaks ja tõhusamaks muuta.
- Python: Pythoni uusima versiooni installimine oleks hea otsus. Parimate tulemuste saamiseks võite installida mis tahes Pythoni IDE.
- Uudiste veebisait/juurdepääs Internetile: Kuna Pythoni kood loeb teie lemmikveebisaidi peamisi pealkirju, peate tagama, et pääsete selle koodi käitamise ajal veebisaidile juurde.
Kogu kood on kirjutatud populaarsesse Jupyteri sülearvutisse Python IDE selle juhendi jaoks. Lisaks on India Today uudiste veebisait kodeeritud näidiskoodi sisse.
Jupyteri sülearvuti allalaadimiseks võite seda kasutada anaconda paketi osana või alla laadida oma süsteemi eraldiseisva versiooni.
Lae alla:Anaconda | Jupyteri märkmik
Ilma pikema jututa süveneme koodi sügavamale.
Koodi kirjutamine Pythonis
Alustuseks peate importima mõned Pythoni teegid, millest igaüks teenib erinevat eesmärki.
importige win32com.client kui wincl
urllib.request import urlopen kui ureq
bs4-st import BeautifulSoup supiks
sp = wincl. Saatmine ("SAPI.spVoice")
Kus:
- win32com.client: See teek suhtleb Windowsi seadmetega ja käitab Pythoni programme sujuvalt.
- urllib.request: See teek käsitleb päringumooduli URL-i väärtusi.
- bs4: BS4 teek sisaldab funktsiooni Beautiful Soup, mis kraabib Pythonit kasutavatelt veebisaitidelt andmeid.
- sp = wincl. Saatmine ("SAPI.spVoice"): Aktiveerige Windowsis häälkäsklused.
See kood töötab ainult Windowsis, kuna helistate win32.com.client teegile.
Järgmisena peate määratlema veebisaidi URL-i (lingi). url muutuja, mis salvestatakse Pythoni mällu.
url = https://www.indiatoday.in/top-stories
Looge URL-i avamise käsu salvestamiseks uus muutujaklient.
klient = ureq (url)
print (klient)
kus:
- klient: Uus muutuja.
- ureq: Pythoni funktsioon imporditud failist urllib.request, mis avab salvestatud URL-i.
Kuna olete URL-i mälus avanud, on aeg kontrollida, kas kõnealune veebisait lubab Pythoni kaudu turvamata ühendusi. Saate printida kliendi muutuja ja kontrollida väljundit.
Prindikäsuga on kaks võimalust:
- HTTP Error: Kui veebisait on turvaline, ei saa te sisu Pythoni abil kraapida.
- Koodilõik: Kui koodilõik tagastatakse pärast veebisaidi käitamist, eeldage, et saate hõlpsalt pealkirju tõmmata.
Kui olete URL-i käsus määranud uudiste veebisaidi URL-i, on aeg importida HTML-kood muutujasse.
page_html = klient.read()
print (page_html)
Ettevaatusabinõuna peate printima Pythoni imporditud veebisaidi HTML-koodi. Saate isegi selle koodi sobitada veebisaidi koodiga, mis on saadaval jaotises Kontrollige valik.
Enne koodi teisendamist peate sulgemiskäsu abil veebisaidi Pythoni mälust sulgema.
client.close()
Kuna teil on HTML-kood imporditud Pythoni muutujasse, peate selle rakendamiseks muutma selle Pythoni loetavasse vormingusse. leida ja leia kõik käske märksõnade otsimiseks.
HTML-koodi teisendamiseks saate edastada järgmise käsu:
page_soup = supp (page_html, "html.parser")
Kus:
- page_supp: Uus muutuja.
- supp: Pseudonüüm Ilus supp moodul.
- page_html: Muutuja, mis sisaldab veebisaidi HTML-koodi.
- html_parser: Vaikimisi süntaks HTML-koodi teisendamiseks.
Kui kood on kasutamiseks valmis, on aeg uurida veebisaidi HTML-koodi, et hakata otsima pealkirja märksõnu.
Selleks paremklõpsake igal veebisaidil ja klõpsake nuppu Kontrolli. See avab kõnealuse veebisaidi HTML-koodi.
Kerige veebisaidi koodiaknas ringi, kuni leiate pealkirju salvestavad konteinerimärgendid.
Need sisalduvad vaata-sisu sildid India Today veebisaidil. Iga uudiste veebisaidi konteinerid on erinevad, kuid peaksite saama koodis suhteliselt hõlpsalt navigeerida.
artiklid = page_soup.find("div", { "class": "view-content" })
Lõpuks peate jäädvustama alamsildid, mis sisaldavad peamisi pealkirju, mida Python teile ette loeb.
artiklid = artiklid.findAll("div", {"klass": "kategoorialoend"})
Vaatamissisu konteiner sisaldab mitut pealkirja, mis on teie pealkirjade väliskest.
H2-märgendite ja iga pealkirjaga loetletud katkendite jäädvustamiseks peate käivitama tsükli.
i = 1
x jaoks artiklites:
pealkiri = x.find("h2").tekst
para = x.find("p").tekst
print (i, pealkiri, "
", "
", para, "
", "
")
sp. Rääkige (pealkiri)
sp. Rääkige (para)
i=i+1
Kus:
- mina: Uus loenduri muutuja, mida suurendatakse automaatselt.
- pealkiri: Uus muutuja pealkirja salvestamiseks (h2).
- para: Uus muutuja iga H2-ga seotud lõikude hoidmiseks.
- printida: Pealkirja ja punkti pealkiri trükitakse Pythoni liidesele.
- sp. Rääkige (pealkiri): Python loeb ette iga salvestatud pealkirja.
- sp. Rääkige (para): Python loeb ette iga salvestatud lõigujupi.
- i = i+1: See käsk suurendab automaatselt iga Pythoni liideses kuvatava pealkirjaga seotud seerianumbrit.
Pythoni kauni supi mooduli kasutamine oma igapäevaste uudiste lugemiseks
Iga kord, kui koodi käivitate, laaditakse uudiste veebisaidilt alla värsked pealkirjad, enne kui need ette loetakse. Python käivitab koodi iga kord, kui käivitate koodikomplekti, hoides teid kursis veebisaidi muudatustega.
Python jätkab vanemate pealkirjade kuvamist ja ettelugemist, kuni koodi värskendate ja uuesti käivitate.
Pythoni kasutamine igapäevaste pealkirjade lugemiseks on lihtne
Python pakub avatud lähtekoodiga keelena mitmeid tööriistu, nagu Beautiful Soup, Selenium ja muud raamistikud – nii algajatele kui ka edasijõudnutele.
Kui soovite saada oma igapäevaseid uudiseid häälega, teeb Python selle lihtsaks. Selle konkreetse keele õppimine võib samuti aidata teil saada kõigis valdkondades paremaks programmeerijaks.
Olenemata sellest, kas vajate Pythoni tööriistu andmeteaduse, masinõppe, veebiarenduse või millegi vahepealse jaoks, see loend sisaldab teid.
Loe edasi
- Programmeerimine
- Python
- Uudised
- Arvuti näpunäited
- Programmeerimine
Gaurav Siyal on kaheaastane kirjutamiskogemus, kirjutades mitmetele digitaalse turunduse ettevõtetele ja tarkvara elutsükli dokumentidele.
Liituge meie uudiskirjaga
Liituge meie uudiskirjaga tehniliste näpunäidete, arvustuste, tasuta e-raamatute ja eksklusiivsete pakkumiste saamiseks!
Tellimiseks klõpsake siin