logo

Leser valgt nettsideinnhold ved hjelp av Python Web Scraping

Forutsetning: Laster ned filer i Python Nettskraping med BeautifulSoup Vi vet alle at Python er et veldig enkelt programmeringsspråk, men det som gjør det kult er det store antallet åpen kildekode-biblioteker skrevet for det. Forespørsler er et av de mest brukte bibliotekene. Det lar oss åpne et hvilket som helst HTTP/HTTPS-nettsted og la oss gjøre alle slags ting vi vanligvis gjør på nettet og kan også lagre økter, dvs. informasjonskapsler. Som vi alle vet at en nettside bare er et stykke HTML-kode som sendes av webserveren til nettleseren vår som igjen konverteres til den vakre siden. Nå trenger vi en mekanisme for å få tak i HTML-kildekoden, dvs. finne noen spesielle tagger med en pakke kalt BeautifulSoup. Installasjon:
pip3 install requests 
pip3 install beautifulsoup4 

Vi tar et eksempel ved å lese en nyhetsside Hindustan Times

Koden kan deles inn i tre deler.
  • Be om en nettside
  • Inspiserer merkelappene
  • Skriv ut riktig innhold
Trinn:
    Be om en nettside:Først ser vi høyreklikk på nyhetsteksten for å se kildekoden Leser valgt nettsideinnhold ved hjelp av Python Web Scraping' title= Inspiserer taggene:Vi må finne ut hvilken brødtekst i kildekoden som inneholder nyhetsdelen vi ønsker å skrote. Det er den under uli.e uordnede listen 'searchNews' som inneholder nyhetsseksjonen. Leser valgt nettsideinnhold ved hjelp av Python Web Scraping' title= Merk Nyhetsteksten er til stede i ankertagtekstdelen. En nøye observasjon gir oss ideen om at alle nyhetene er i li-liste-taggene til den uordnede taggen. Leser valgt nettsideinnhold ved hjelp av Python Web Scraping' title= Skriv ut riktig innhold: 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() 

    Produksjon

    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 

Referanser



Lag quiz