Тримесечни финансови данни на Yahoo с помощта на R

Опитвам се да направя webscrape финансови данни на yahoo. Намерих решение, което работи за някои данни ... но не мога да разбера как да направя скок към тримесечни данни. Чудя се дали не съм на грешен път. Ето едно решение, което работи за мен, но не мога да разбера как да направя скок към тримесечни данни вместо годишни данни: R: уеб изчерпване на yahoo.finance след промяна от 2019 г.


person Kat    schedule 07.08.2020    source източник
comment
Моля, покажете ни какво се опитвате да направите, за да разрешите този проблем. Резултатите, които очаквахте срещу резултатите, които имате и т.н. Благодаря!   -  person Andre Carneiro    schedule 08.08.2020


Отговори (1)


Един от проблемите с изчерпването на тази страница е, че по подразбиране са годишни данни. Тримесечните данни се зареждат в браузъра, след като потребителят щракне върху бутона Тримесечно. Въпреки че това е лошо за скрапинг, е добре за прихващане на API заявки. Ако отворите вашата конзола за разработчици в браузър, отидете на раздела Мрежа и след това изберете бутона Тримесечно, ще видите направена заявка (поставям URL адреса най-долу, тъй като е наистина дълъг). Заявката ще върне JSON данни.

Отказ от отговорност: Не знам много за R. Но след като направих малко проучване, открих, че R има няколко пакета, които ви позволяват да четете JSON данни, и можете да направите нещо подобно:

# using rjson
url = "<get from down below>"
data = rjson::readJSON(file=url)

# using jsonlite
library(jsonlite)

url = "<get from down below>"
data <- readJSON(url)

Ето URL адреса:

https://query1.finance.yahoo.com/ws/fundamentals-timeseries/v1/finance/premium/timeseries/AAPL?lang=en-US®ion=US&symbol=AAPL&padTimeSeries=true&type=annualEbitda%2CtrailingEbitda%2CannualDilutedAverageShares%2CtrailingDilutedAverageShares%2CannualBasicAverageShares%2CtrailingBasicAverageShares%2CannualDilutedEPS%2CtrailingDilutedEPS%2CannualBasicEPS%2CtrailingBasicEPS%2CannualNetIncomeCommonStockholders%2CtrailingNetIncomeCommonStockholders%2CannualNetIncome%2CtrailingNetIncome%2CannualNetIncomeContinuousOperations%2CtrailingNetIncomeContinuousOperations%2CannualTaxProvision%2CtrailingTaxProvision%2CannualPretaxIncome%2CtrailingPretaxIncome%2CannualOtherIncomeExpense%2CtrailingOtherIncomeExpense%2CannualInterestExpense%2CtrailingInterestExpense%2CannualOperatingIncome%2CtrailingOperatingIncome%2CannualOperatingExpense%2CtrailingOperatingExpense%2CannualSellingGeneralAndAdministration%2CtrailingSellingGeneralAndAdministration%2CannualResearchAndDevelopment%2CtrailingResearchAndDevelopment%2CannualGrossProfit%2CtrailingGrossProfit%2CannualCostOfRevenue%2CtrailingCostOfRevenue%2CannualTotalRevenue%2CtrailingTotalRevenue&merge=false&period1=493590046&period2=1596836602&corsDomain=finance.yahoo.com

Има друг URL адрес, който можете да използвате, който може да ви извлече данни за тримесечния отчет за доходите, но изглежда малко непостоянен, когато използвате компании извън САЩ:

https://query2.finance.yahoo.com/v10/finance/quoteSummary/aapl?modules=incomeStatementHistoryQuarterly

person putty    schedule 07.08.2020