In this article we will see how to make a script to get the details of corona virus cases i.e total cases, recovered cases and total deaths only by typing the name of the country.
Modules required and Installation:
Requests : Requests allows you to send HTTP/1.1 requests extremely easily. There’s no need to manually add query strings to your URLs.
pip install requests
Beautiful Soup: Beautiful Soup is a library that makes it easy to scrape information from web pages. It sits atop an HTML or XML parser, providing Pythonic idioms for iterating, searching, and modifying the parse tree.
pip install beautifulsoup4
In order to make this script we have to do the following :
1. From the name of the country create URL
2. Scrape the data with the help of requests and Beautiful Soup
3. Convert that data into html code.
4. Find the required details and filter them.
5. Save the result in the dictionary.
Below is the implementation –
Python3
from bs4 import BeautifulSoup as BS
import requests
def get_info(country_name):
data = requests.get(url)
soup = BS(data.text, 'html.parser' )
cases = soup.find_all( "div" , class_ = "maincounter-number" )
total = cases[ 0 ].text
total = total[ 1 : len (total) - 2 ]
recovered = cases[ 2 ].text
recovered = recovered[ 1 : len (recovered) - 1 ]
deaths = cases[ 1 ].text
deaths = deaths[ 1 : len (deaths) - 1 ]
ans = { 'Total Cases' : total, 'Recovered Cases' : recovered,
'Total Deaths' : deaths}
return ans
country_name = "us"
us = get_info(country_name)
print ( "Cases in United States" )
for i, j in us.items():
print (i + " : " + j)
print ( "----------------------------" )
country_name = "india"
india = get_info(country_name)
print ( "Cases in India" )
for i, j in india.items():
print (i + " : " + j)
|
Output :
Cases in United States
Total Cases : 654,343
Recovered Cases : 56,618
Total Deaths : 33,490
----------------------------
Cases in India
Total Cases : 12,759
Recovered Cases : 1,514
Total Deaths : 423
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!
Last Updated :
21 Dec, 2021
Like Article
Save Article