Eksperti i Semalt: Python dhe BeautifulSoup. Scrap faqet me lehtësi

Kur kryeni analiza të të dhënave ose projekte të mësimit të makinerisë, do t'ju duhet të shkruani faqet e internetit për të marrë të dhënat e nevojshme dhe për të përfunduar projektin tuaj. Gjuha e programimit Python ka një koleksion të fuqishëm mjetesh dhe module që mund të përdoren për këtë qëllim. Për shembull, mund të përdorni modulin BeautifulSoup për analizimin e HTML.

Këtu, ne do të hedhim një vështrim në BeautifulSoup dhe të zbuloni pse tani po përdoret kaq gjerësisht në scrapinginternet .

Karakteristikat e bukurSoup

- Ai siguron metoda të ndryshme për navigimin e lehtë, kërkimin dhe modifikimin e pemëve me gjethe, duke ju lejuar kështu që lehtë të shpërndani një dokument dhe të nxirrni gjithçka që ju nevojitet pa shkruar shumë kod.

- Ai automatikisht i konverton dokumentet dalëse në UTF-8 dhe dokumentet hyrëse në Unicode. Kjo do të thotë që nuk do të duhet të shqetësoheni për kodifikimet me kusht që dokumenti të ketë specifikuar një kodim ose Supë e bukur mund ta autodetektojë atë.

- BeautifulSoup konsiderohet superior ndaj pararsuesve të tjerë të njohur Python si html5lib dhe lxml. Kjo lejon të provoni strategji të ndryshme të analizimit. Sidoqoftë, një disavantazh i këtij moduli është se siguron më shumë fleksibilitet në kurriz të shpejtësisë.

Farë ju duhet të shkruani faqen e internetit me BeautifulSoup?

Për të filluar punën me BeautifulSoup, duhet të keni të vendosur mjedisin e programimit Python (qoftë lokal ose të bazuar në server) në makinën tuaj. Python zakonisht është para-instaluar në OS X, por nëse përdorni Windows, do të duhet të shkarkoni dhe instaloni gjuhën nga faqja zyrtare e internetit.

Ju duhet të keni të instaluar modulet BeautifulSoup dhe Kërkon.

Në fund të fundit, të qenit i njohur dhe i qetë duke punuar me etiketimin dhe strukturën HTML është padyshim i dobishëm pasi do të punoni me të dhëna të buruara nga uebi.

Importimi i kërkesave dhe bibliotekat e BeautifulSoup

Me mjedisin programues të Python të vendosur mirë, tani mund të krijoni një skedar të ri (duke përdorur nano, për shembull) me çdo emër që ju pëlqen.

Biblioteka e Kërkesave ju lejon të përdorni një formë HTTP-të lexueshme nga njeriu brenda programeve tuaja Python ndërsa BeautifulSoup merr skrapimin e bërë me një shpejtësi më të shpejtë. Ju mund të përdorni deklaratën e importit për të marrë të dy bibliotekat.

Si të mblidhni dhe të analizoni një faqe në internet

Përdorni metodën requests.get () për të mbledhur URL-në e faqes në internet nga e cila dëshironi të nxirrni të dhëna. Tjetra, krijoni një objekt të BeautifulSoup ose pemë تجزیه. Ky objekt e merr dokumentin nga Kërkesat si argumentet e tij dhe pastaj e analizon atë. Me faqen e mbledhur, analizuar dhe vendosur si një objekt BeautifulSoup, më pas mund të vazhdoni të mbledhni të dhënat që ju nevojiten.

Nxjerrja e tekstit të dëshiruar nga faqja e internetit e analizuar

Kurdoherë që doni të mblidhni të dhëna në internet, duhet të dini se si përshkruhen ato të dhëna nga Modeli i Objektit të Dokumentit (DOM) të faqes në internet. Në shfletuesin tuaj të internetit, kliko me të djathtën (nëse përdorni Windows), ose CTRL + klikoni (nëse përdorni makOS) në një nga artikujt që bëjnë pjesë në të dhënat me interes. Për shembull, nëse doni të nxirrni të dhëna për kombësinë e studentëve, klikoni në një nga emrat e një studenti. Një menu konteksti shfaqet, dhe brenda saj, ju do të shihni një artikull të menusë të ngjashme me Inspect Element (për Firefox) ose Inspect (për Chrome). Klikoni në artikullin përkatës Inspekto dhe mjetet e zhvilluesit të faqes do të shfaqen brenda shfletuesit tuaj.

BeautifulSoup është një mjet i thjeshtë, por fuqishëm i analizimit HTML që ju lejon një fleksibilitet të madh kur scraping faqet e internetit . Kur e përdorni, mos harroni të respektoni rregullat e përgjithshme të skrapimit, siç është kontrollimi i Kushteve dhe kushteve të faqes në internet; rishikimi i faqes rregullisht dhe azhurnimi i kodit tuaj sipas ndryshimeve të bëra në faqe. Duke pasur këtë njohuri në lidhje me scraping faqet e internetit me Python dhe BeautifulSoup, tani mund të merrni lehtësisht të dhënat e internetit që ju nevojiten për projektin tuaj.

send email