From ea7c985d1616ec2cf52ffb553f2e2620dfe6b369 Mon Sep 17 00:00:00 2001 From: Susmit Bhamare <62463056+SusmitBhamare@users.noreply.github.com> Date: Sat, 8 Oct 2022 11:19:40 +0530 Subject: [PATCH 1/4] Stock Market Data Scrap Script --- Stock Market Data Scrap | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 Stock Market Data Scrap diff --git a/Stock Market Data Scrap b/Stock Market Data Scrap new file mode 100644 index 0000000..d15720a --- /dev/null +++ b/Stock Market Data Scrap @@ -0,0 +1,25 @@ +#dependencies +import requestsfrom bs4 +import BeautifulSoup +import csvfrom urllib.parse +import urlencode +#list of URLsurls = ['https://www.investing.com/equities/nike', +'https://www.investing.com/equities/coca-cola-co', +'https://www.investing.com/equities/microsoft-corp',] +#starting our CSV filefile = open('stockprices.csv', 'w') +writer = csv.writer(file) +writer.writerow(['Company', 'Price', 'Change']) +#looping through our listfor url in urls: +#sending our request through ScraperAPI +params = {'api_key': '51e43be283e4db2a5afb62660fc6ee44', 'url': url} +page = requests.get('http://api.scraperapi.com/', params=urlencode(params)) +#our parsersoup = BeautifulSoup(page.text, 'html.parser') +company = soup.find('h1', {'class': 'text-2xl font-semibold instrument-header_title__GTWDv mobile:mb-2'}).text +price = soup.find('div', {'class': 'instrument-price_instrument-price__3uw25 flex items-end flex-wrap font-bold'}).find_all('span')[0].text +change = soup.find('div', {'class': 'instrument-price_instrument-price__3uw25 flex items-end flex-wrap font-bold'}).find_all('span')[2].text +#printing to have some visual feedback +print('Loading :', url) +print(company, price, change) +#writing the data into our CSV file +writer.writerow([company.encode('utf-8'), price.encode('utf-8'), change.encode('utf-8')]) +file.close() From 28984b57083b244e7b7866b5f23a98336c4fda14 Mon Sep 17 00:00:00 2001 From: Susmit Bhamare <62463056+SusmitBhamare@users.noreply.github.com> Date: Sat, 8 Oct 2022 11:47:39 +0530 Subject: [PATCH 2/4] Rename Stock Market Data Scrap to StockMarketDataScrap.py --- Stock Market Data Scrap => StockMarketDataScrap.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename Stock Market Data Scrap => StockMarketDataScrap.py (100%) diff --git a/Stock Market Data Scrap b/StockMarketDataScrap.py similarity index 100% rename from Stock Market Data Scrap rename to StockMarketDataScrap.py From af33a5bbda39281532c55a60f9655e868648f172 Mon Sep 17 00:00:00 2001 From: Susmit Bhamare <62463056+SusmitBhamare@users.noreply.github.com> Date: Sun, 9 Oct 2022 17:42:20 +0530 Subject: [PATCH 3/4] Create ScrapeWebsite.py --- ScrapeWebsite.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 ScrapeWebsite.py diff --git a/ScrapeWebsite.py b/ScrapeWebsite.py new file mode 100644 index 0000000..3475c73 --- /dev/null +++ b/ScrapeWebsite.py @@ -0,0 +1,31 @@ +#Python program to scrape website +#and save quotes from website +import requests +from bs4 import BeautifulSoup +import csv + +URL = "http://www.values.com/inspirational-quotes" +r = requests.get(URL) + +soup = BeautifulSoup(r.content, 'html5lib') + +quotes=[] # a list to store quotes + +table = soup.find('div', attrs = {'id':'all_quotes'}) + +for row in table.findAll('div', + attrs = {'class':'col-6 col-lg-3 text-center margin-30px-bottom sm-margin-30px-top'}): + quote = {} + quote['theme'] = row.h5.text + quote['url'] = row.a['href'] + quote['img'] = row.img['src'] + quote['lines'] = row.img['alt'].split(" #")[0] + quote['author'] = row.img['alt'].split(" #")[1] + quotes.append(quote) + +filename = 'inspirational_quotes.csv' +with open(filename, 'w', newline='') as f: + w = csv.DictWriter(f,['theme','url','img','lines','author']) + w.writeheader() + for quote in quotes: + w.writerow(quote) From 51715a89f9ecfbb7e23177875542a913dfb572e2 Mon Sep 17 00:00:00 2001 From: Susmit Bhamare <62463056+SusmitBhamare@users.noreply.github.com> Date: Sun, 9 Oct 2022 17:42:45 +0530 Subject: [PATCH 4/4] Delete StockMarketDataScrap.py --- StockMarketDataScrap.py | 25 ------------------------- 1 file changed, 25 deletions(-) delete mode 100644 StockMarketDataScrap.py diff --git a/StockMarketDataScrap.py b/StockMarketDataScrap.py deleted file mode 100644 index d15720a..0000000 --- a/StockMarketDataScrap.py +++ /dev/null @@ -1,25 +0,0 @@ -#dependencies -import requestsfrom bs4 -import BeautifulSoup -import csvfrom urllib.parse -import urlencode -#list of URLsurls = ['https://www.investing.com/equities/nike', -'https://www.investing.com/equities/coca-cola-co', -'https://www.investing.com/equities/microsoft-corp',] -#starting our CSV filefile = open('stockprices.csv', 'w') -writer = csv.writer(file) -writer.writerow(['Company', 'Price', 'Change']) -#looping through our listfor url in urls: -#sending our request through ScraperAPI -params = {'api_key': '51e43be283e4db2a5afb62660fc6ee44', 'url': url} -page = requests.get('http://api.scraperapi.com/', params=urlencode(params)) -#our parsersoup = BeautifulSoup(page.text, 'html.parser') -company = soup.find('h1', {'class': 'text-2xl font-semibold instrument-header_title__GTWDv mobile:mb-2'}).text -price = soup.find('div', {'class': 'instrument-price_instrument-price__3uw25 flex items-end flex-wrap font-bold'}).find_all('span')[0].text -change = soup.find('div', {'class': 'instrument-price_instrument-price__3uw25 flex items-end flex-wrap font-bold'}).find_all('span')[2].text -#printing to have some visual feedback -print('Loading :', url) -print(company, price, change) -#writing the data into our CSV file -writer.writerow([company.encode('utf-8'), price.encode('utf-8'), change.encode('utf-8')]) -file.close()