Ak vyvíjate alebo navrhujete webovú stránku, pravdepodobne budete musieť získať nejaké obrázky. Môžu byť užitočné pri prototypovaní alebo dokonca na použitie vo vašej produkčnej aplikácii.
Pomocou vždy priateľského jazyka Python môžete ľahko vytvoriť náhodný nástroj na získanie obrázkov. Môžete ho použiť na predvádzanie náhodných vizuálov v miniaplikácii, testovanie prepínania rozlíšenia alebo predvádzanie nástroja na odporúčanie produktov.
Sledujte tento projekt a získajte praktické skúsenosti s modulom Žiadosti a vankúš. Osvedčia sa pri budúcej práci na webe, vrátane spracovania obrázkov.
Moduly žiadostí a vankúšov
Modul Requests zjednodušuje vytváranie požiadaviek HTTP a vracia objekt odpovede, ktorý obsahuje údaje, ako je kódovanie a stav. Vďaka tomu môžete vyvíjať mnoho zaujímavých aplikácií, ako napr kontrola stavu webu, webový škrabák, bot monitorujúci akciový trh a tester výkonnosti webových stránok. Ak chcete nainštalovať modul požiadaviek, otvorte terminál a zadajte:
požiadavky na inštaláciu pip
Knižnica Pillow – vidlica knižnice Python Imaging Library (PIL) – poskytuje možnosti spracovania obrázkov, ktoré pomáhajú pri úpravách, vytváraní, konvertovanie formátov súborova ukladanie obrázkov. Ponúka širokú kompatibilitu formátov súborov a užitočnú internú reprezentáciu. Ak chcete nainštalovať vankúšový modul, otvorte terminál a napíšte:
pip install Vankúš
Ako vytvoriť náhodný nástroj na získanie obrázkov pomocou Pythonu
Zdrojový kód Random Image Fetcher pomocou Pythonu nájdete v tomto Úložisko GitHub.
Importujte moduly a definujte funkciu s názvom img_requests() ktorý berie txt ako vstupný parameter. Pošlite metódu GET na URL API Unsplash a použite formát spôsob vyplnenia zástupného symbolu, {0}s hodnotou txt. Uložte odpoveď obsahu vo formáte JPG a otvorte obrázok, aby si ho mohol používateľ pozrieť. Nakoniec zatvorte otvorený súbor.
importovať žiadosti
od PIL importovať Obrázok
defimg_requests(TXT):
odpoveď = requesty.get(" https://source.unsplash.com/random{0}".format (txt))
súbor = otvoriť('obrazok.jpg', 'wb')
file.write (response.content)
img = Image.open(r"obrazok.jpg")
img.show()
file.close()
Zobrazte rôzne možnosti, ktoré program poskytuje používateľovi. Prvé štyri možnosti získajú obraz v rozlíšení HD, Full HD, 2K alebo 4K v závislosti od výberu. Ak si používateľ vyberie piatu možnosť, musí zadať kľúčové slovo. Na základe neho program vyberie vhodný obrázok a uloží ho do systému.
vytlačiť (Zadajte možnosť pre obrázok
1. HD náhodný obrázok
2. Náhodný obrázok FHD
3.2K Náhodný obrázok
4.4k Náhodný obrázok
5. Obrázok s Používateľom poskytnuté kľúčové slovo )
Získajte výber používateľa, zobrazte príslušnú správu a zavolajte funkciu img_requests, pričom zadajte príslušný text pre jeho dopyt.
ans = vstup()
ak'jeden'v ans alebo'1'v odpoveď:
vytlačiť ("Prosím, počkajte, kým načítame HD obraz.")
img_requests('/1280 x 720')
elif'dva'v ans alebo'2'v odpoveď:
vytlačiť ("Prosím, počkajte, kým načítame obraz v rozlíšení Full HD.")
img_requests('/1920 x 1080')
elif'tri'v ans alebo'3'v odpoveď:
vytlačiť ("Prosím, počkajte, kým načítame 2k obrázok.")
img_requests('/2048 x 1080')
elif'štyri'v ans alebo'4'v odpoveď:
vytlačiť ("Prosím, počkajte, kým načítame 4K obrázok.")
img_requests('/4096 x 2160')
Piata možnosť je o niečo zložitejšia. Ak si to používateľ vyberie, požiadajte ho o zadanie kľúčových slov. Pridajte otáznik pred kľúčové slovo a zavolajte funkciu na získanie náhodného obrázka podľa zadania.
elif'päť'v ans alebo'5'v odpoveď:
vytlačiť ("Zadajte kľúčové slovo, ktorého náhodný obrázok chcete získať.")
st = vstup()
sv = "?" + sv
vytlačiť ("Prosím, počkajte, kým načítame obrázky z našej databázy.")
img_requests (st)
Ak používateľ zadá čokoľvek iné, požiadajte ho, aby poskytol platný vstup:
inak:
vytlačiť ("Uveďte platný vstup.")
Dajte celý kód dohromady a užite si načítanie náhodných obrázkov vo vysokom rozlíšení.
Výstup z nástroja na získanie náhodných obrázkov
Pri spustení programu vyššie program zobrazí päť možností. Po výbere ktorejkoľvek z možností program uloží obrázok a zobrazí ho na obrazovke.
Ak zvolíte možnosť 5 a zadáte kľúčové slovo Spider-Man, program stiahne nasledujúci obrázok Spider-Mana z Unsplash.
Scraping webu pomocou Pythonu
Mnoho stránok poskytuje užitočné rozhrania API, ako je napríklad nástroj na získanie náhodných obrázkov Unsplash. Ale pre tých, ktorí nie, vždy sa môžete uchýliť k zoškrabávaniu webu a modul Žiadosti vám môže pomôcť.
Medzi ďalšie užitočné moduly patria Beautiful Soup, Selenium, Scrapy, Urllib a Mechanize. Web scraping môžete použiť na extrahovanie informácií z ľubovoľnej webovej stránky, ich uloženie a analýzu podľa vašich požiadaviek.
Niektoré z aplikácií, ktoré môžete vyvinúť pomocou tejto techniky, zahŕňajú škrabku správ, sledovanie cien a sťahovanie obrázkov. Web Scraping sa vo veľkej miere používa aj v spracovaní prirodzeného jazyka na trénovanie modelov a vykonávanie analýzy sentimentu.