Question
I am scraping a site for world presidents' list. I have done the following code which gets the names but on the csv file I need help.
import requests
from bs4 import BeautifulSoup
import csv
f = csv.writer(open(‘world-presidents.csv’, 'w’))
f.writerow([’S.No’, 'Country’,'President’,'Prime-Minister’])
Collect and parse first page
page = requests.get(’http://bankersdaily.in/list-of-current-prime-ministers-president-in-world-updated-till-may-2018-static-gk’)
soup = BeautifulSoup(page.text, 'html.parser’)
Pull all text from the BodyText div
presidentnamelist = soup.find(class_='content’)
Pull text from all instances of <a> tag within BodyText div
presidentnamelistitems = presidentnamelist.findall('td’)
presidentnamelist = soup.find(class='content’)
presidentnamelistitems = presidentnamelist.find_all('td’)
Create for loop to print out all artists’ names
for presidentname in presidentnamelistitems:
names = president_name.contents[0]
f.writerow([names])
I need to have a csv file that prints in excel the s.no, country, president and prime minister in the order given on site. Please give correct code to end up with the desired output.