Semalt: Webkaparás a Python segítségével

Volt valamelyik ilyen félelmetes pillanat, amikor nem rendelkezik Wi-Fi-vel. Ha igen, akkor rájött, hogy a számítógépén végzett tevékenységek mekkora része függ a nettóól. A puszta szokásból kitűnik, hogy ellenőrzi az e-maileket, megtekinti barátja Instagram-fotóit, valamint elolvassa a tweeteiket.

Mivel oly sok számítógépes munka jár a webes folyamatokkal, nagyon kényelmes lenne, ha a programjai online is elérhetővé válnak. Ez vonatkozik a webes kaparásra . Ez magában foglalja egy program használatát tartalom letöltésére és feldolgozására az internetről. Például a Google különféle kaparó programokat használ a weboldalak indexelésére keresőmotorja számára.

Számos módja van az adatok lekaparására az internetről. Ezeknek a módszereknek a sokféle programozási nyelv, például Python és R. parancsát igényli. Például a Python esetén számos modult használhat, mint például Kérések, Gyönyörű leves, Webbrowser és Szelén.

A 'Kérések' modul lehetővé teszi a fájlok egyszerű letöltését az internetről anélkül, hogy aggódnia kellene olyan nehéz kérdések miatt, mint például a kapcsolódási problémák, a hálózati hibák és az adatok tömörítése. Nem feltétlenül tartozik a Python-hoz, ezért előbb telepítenie kell.

A modult azért fejlesztették ki, mert a Python 'urllib2' modulja sok bonyodalommal bonyolítja a felhasználást. Valójában meglehetősen könnyű telepíteni. Csak annyit kell tennie, hogy futtatja a pip telepítési kérelmeit a parancssorból. Ezután el kell végeznie egy egyszerű tesztet, hogy megbizonyosodjon arról, hogy a modul megfelelően telepítette-e. Ehhez beírhatja az '>>> import kérések' lehetőséget az interaktív héjba. Ha nem jelenik meg hibaüzenet, akkor a telepítés sikeres volt.

Egy oldal letöltéséhez el kell indítania a „kérések.get ()” funkciót. A függvény letölt egy URL-sorozatot, majd visszatér egy „válasz” objektumot. Ez a választ tartalmazza, amelyet a webszerver adott vissza a kérésére. Ha a kérés sikeres, akkor a letöltött weblapot karakterláncként menti a válaszobjektumok szövegváltozó.

A válaszobjektumnak általában állapotkód-attribútummal rendelkezik, amely segítségével megtudhatja, sikeres-e a letöltés. Hasonlóképpen, meghívhatja az 'raise_for_status ()' módszert egy válaszobjektumon. Ez kivételt vet fel, ha a fájl letöltése során bármilyen hiba történt. Ez egy nagyszerű módszer annak biztosítására, hogy egy program leálljon rossz letöltés esetén.

Innen mentheti a letöltött webfájlt a merevlemezére a szokásos funkciók, az 'open ()' és 'write ()' használatával. Annak érdekében azonban, hogy megőrizze a szöveg Unicode kódolását, a szöveges adatokat helyettesítenie kell bináris adatokkal.

Az adatok fájlba írásához használhat egy „for” hurkot az 'iter_content ()' módszerrel. Ez a módszer a hurokon keresztül minden egyes iterációhoz adatcsomagokat ad vissza. Minden tömeg bájtban van, és meg kell határoznia, hogy az egyes tömegek hány bájtot tartalmaznak. Miután befejezte az írás meghívását, hívja a 'bezárás ()' elemet, hogy bezárja a fájlt, és a munkája vége.

mass gmail