logo

Citirea conținutului paginii web selectate folosind Python Web Scraping

Condiție preliminară: Descărcarea fișierelor în Python Web Scraping cu BeautifulSoup Știm cu toții că Python este un limbaj de programare foarte ușor, dar ceea ce îl face cool este numărul mare de biblioteci open source scrise pentru el. Requests este una dintre cele mai utilizate biblioteci. Ne permite să deschidem orice site web HTTP/HTTPS și să facem orice fel de lucruri pe care le facem în mod normal pe web și, de asemenea, putem salva sesiuni, de exemplu cookie-uri. După cum știm cu toții, o pagină web este doar o bucată de cod HTML care este trimisă de serverul web către Browserul nostru, care la rândul său se transformă în pagina frumoasă. Acum avem nevoie de un mecanism pentru a obține codul sursă HTML, adică găsirea unor etichete speciale cu un pachet numit BeautifulSoup. Instalare:
pip3 install requests 
pip3 install beautifulsoup4 

Luăm un exemplu citind un site de știri Hindustan Times

eliminați primul caracter excel
Codul poate fi împărțit în trei părți.
  • Solicitarea unei pagini web
  • Inspectarea etichetelor
  • Tipăriți conținutul corespunzător
Pași:
    Solicitarea unei pagini web:Mai întâi vedem clic dreapta pe textul știrilor pentru a vedea codul sursă Citirea conținutului paginii web selectate folosind Python Web Scraping' title= Verificarea etichetelor:Trebuie să ne dăm seama în ce corp al codului sursă conține secțiunea de știri pe care dorim să o renunțăm. Este lista neordonată de sub uli.e „searchNews” care conține secțiunea de știri. Citirea conținutului paginii web selectate folosind Python Web Scraping' title= Notă Textul știrilor este prezent în partea de text a etichetei de ancorare. O observație atentă ne dă ideea că toate știrile sunt în lilist tag-uri ale etichetei neordonate. Citirea conținutului paginii web selectate folosind Python Web Scraping' title= Tipăriți conținutul corespunzător: The content is printed with the help of code given below. Python
    import requests from bs4 import BeautifulSoup def news(): # the target we want to open  url='http://www.hindustantimes.com/top-news' #open with GET method resp=requests.get(url) #http_respone 200 means OK status if resp.status_code==200: print('Successfully opened the web page') print('The news are as follow :-n') # we need a parserPython built-in HTML parser is enough . soup=BeautifulSoup(resp.text'html.parser') # l is the list which contains all the text i.e news  l=soup.find('ul'{'class':'searchNews'}) #now we want to print only the text part of the anchor. #find all the elements of a i.e anchor for i in l.findAll('a'): print(i.text) else: print('Error') news() 

    Ieșire

    Successfully opened the web page The news are as follow :- Govt extends toll tax suspension use of old notes for utility bills extended till Nov 14 Modi Abe seal historic civil nuclear pact: What it means for India Rahul queues up at bank says it is to show solidarity with common man IS kills over 60 in Mosul victims dressed in orange and marked 'traitors' Rock On 2 review: Farhan Akhtar Arjun Rampal's band hasn't lost its magic Rumours of shortage in salt supply spark panic among consumers in UP Worrying truth: India ranks first in pneumonia diarrhoea deaths among kids To hell with romance here's why being single is the coolest way to be India vs England: Cheteshwar Pujara Murali Vijay make merry with tons in Rajkot Akshay-Bhumi SRK-Alia Ajay-Parineeti: Age difference doesn't matter anymore Currency ban: Only one-third have bank access; NE backward regions worst hit Nepal's central bank halts transactions with Rs 500 Rs 1000 Indian notes Political upheaval in Punjab after SC tells it to share Sutlej water Let's not kid ourselves with Trump what we have seen is what we will get Want to colour your hair? Try rose gold the hottest hair trend this winter 

Referințe



Creați un test