Download as pdf or txt
Download as pdf or txt
You are on page 1of 2

pip install requests beautifulsoup4 pandas

Requirement already satisfied: requests in c:\users\sai.kanthamneni\


miniconda3\lib\site-packages (2.31.0)
Requirement already satisfied: beautifulsoup4 in c:\users\
sai.kanthamneni\miniconda3\lib\site-packages (4.12.2)
Requirement already satisfied: pandas in c:\users\sai.kanthamneni\
miniconda3\lib\site-packages (2.2.1)
Requirement already satisfied: charset-normalizer<4,>=2 in c:\users\
sai.kanthamneni\miniconda3\lib\site-packages (from requests) (2.0.4)
Requirement already satisfied: idna<4,>=2.5 in c:\users\
sai.kanthamneni\miniconda3\lib\site-packages (from requests) (3.4)
Requirement already satisfied: urllib3<3,>=1.21.1 in c:\users\
sai.kanthamneni\miniconda3\lib\site-packages (from requests) (2.1.0)
Requirement already satisfied: certifi>=2017.4.17 in c:\users\
sai.kanthamneni\miniconda3\lib\site-packages (from requests)
(2024.2.2)
Requirement already satisfied: soupsieve>1.2 in c:\users\
sai.kanthamneni\miniconda3\lib\site-packages (from beautifulsoup4)
(2.5)
Requirement already satisfied: numpy<2,>=1.22.4 in c:\users\
sai.kanthamneni\miniconda3\lib\site-packages (from pandas) (1.26.4)
Requirement already satisfied: python-dateutil>=2.8.2 in c:\users\
sai.kanthamneni\miniconda3\lib\site-packages (from pandas) (2.8.2)
Requirement already satisfied: pytz>=2020.1 in c:\users\
sai.kanthamneni\miniconda3\lib\site-packages (from pandas)
(2023.3.post1)
Requirement already satisfied: tzdata>=2022.7 in c:\users\
sai.kanthamneni\miniconda3\lib\site-packages (from pandas) (2024.1)
Requirement already satisfied: six>=1.5 in c:\users\sai.kanthamneni\
miniconda3\lib\site-packages (from python-dateutil>=2.8.2->pandas)
(1.16.0)
Note: you may need to restart the kernel to use updated packages.

import requests
from bs4 import BeautifulSoup
import csv

url = "https://finance.yahoo.com/crypto/"
response = requests.get(url)

soup = BeautifulSoup(response.content, "html.parser")

table = soup.find("table", class_="W(100%)")

crypto_data = []
rows = table.find_all("tr")[1:11]
for row in rows:
data = row.find_all("td")
name = data[0].text.strip()
price = data[1].text.strip()
change = data[2].text.strip()
percent_change = data[3].text.strip()
market_cap = data[4].text.strip()
volume_in_currency = data[5].text.strip()
circulating_supply = data[6].text.strip()
crypto_data.append([name, price, change, percent_change,
market_cap, volume_in_currency, circulating_supply])

# Write data to CSV file


csv_file = "crypto_data.csv"
with open(csv_file, "w", newline="", encoding="utf-8") as f:
writer = csv.writer(f)
# Write header
writer.writerow(["Name", "Price", "Change", "Percent Change",
"Market Cap", "Volume (24h)", "Circulating Supply"])
# Write data
writer.writerows(crypto_data)

print("Data written to", csv_file)

Data written to crypto_data.csv

You might also like