import requests
from bs4 import BeautifulSoup
def fetch_data_rows(url):
response = requests.get(url)
if response.status_code == 200:
soup = BeautifulSoup(response.text, 'html.parser')
table = soup.find('table', {'class': 'wikitable'})
if table:
rows = table.find_all('tr')
data_rows = []
for row in rows:
cells = row.find_all('td')
data = [cell.get_text(strip=True) for cell in cells]
if data:
data_rows.append(data)
return data_rows
else:
print("Table 'wikitable' was not found.")
else:
print("Failed to retrieve the page. Status code:", response.status_code)
return []
url = 'https://en.wikipedia.org/wiki/List_of_European_Union_member_states_by_population'
data_rows = fetch_data_rows(url)
countries_dictionary = {}
for row in data_rows:
country = row[0]
population = row[1]
percent = row[2]
percent = percent.strip('%')
percent = float(percent) if percent else None
population = ''.join(filter(str.isdigit, population))
if population:
population = int(population)
countries_dictionary[country] = {
'population': population,
'percent': percent,
}
print(countries_dictionary)