logo

Atlasītā tīmekļa lapas satura lasīšana, izmantojot Python Web Scraping

Priekšnosacījums: Failu lejupielāde programmā Python Tīmekļa skrāpēšana ar BeautifulSoup Mēs visi zinām, ka Python ir ļoti vienkārša programmēšanas valoda, taču to foršu padara lielais tai rakstīto atvērtā koda bibliotēku skaits. Pieprasījumi ir viena no visplašāk izmantotajām bibliotēkām. Tas ļauj mums atvērt jebkuru HTTP/HTTPS vietni un veikt jebkādas darbības, ko parasti darām tīmeklī, kā arī var saglabāt sesijas, piemēram, sīkfailus. Kā mēs visi zinām, tīmekļa lapa ir tikai HTML koda gabals, ko tīmekļa serveris nosūta mūsu pārlūkprogrammai, kas savukārt pārvēršas par skaistu lapu. Tagad mums ir nepieciešams mehānisms, lai iegūtu HTML avota kodu, t.i., atrast dažus konkrētus tagus ar pakotni ar nosaukumu BeautifulSoup. Uzstādīšana:
pip3 install requests 
pip3 install beautifulsoup4 

Mēs ņemam piemēru, lasot ziņu vietni Hindustānas laiki

Kodu var iedalīt trīs daļās.
  • Tīmekļa lapas pieprasīšana
  • Etiķešu pārbaude
  • Izdrukājiet atbilstošo saturu
Darbības:
    Tīmekļa lapas pieprasīšana:Vispirms mēs redzam ar peles labo pogu noklikšķiniet uz ziņu teksta, lai redzētu avota kodu Atlasītā tīmekļa lapas satura lasīšana, izmantojot Python Web Scraping' title= Etiķešu pārbaude:Mums ir jānoskaidro, kurā avota koda daļā ir ziņu sadaļa, kuru vēlamies noņemt. Tas ir zem uli.e nesakārtotajā sarakstā "searchNews", kurā ir ziņu sadaļa. Atlasītā tīmekļa lapas satura lasīšana, izmantojot Python Web Scraping' title= Piezīme. Ziņu teksts atrodas enkura taga teksta daļā. Rūpīgi novērojot, rodas priekšstats, ka visas ziņas ir nekārtotā taga li list tagos. Atlasītā tīmekļa lapas satura lasīšana, izmantojot Python Web Scraping' title= Izdrukājiet atbilstošo saturu: 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() 

    Izvade

    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 

Atsauces



Izveidojiet viktorīnu