2016-08-12 2 views
2

Я недавно пытался автоматически извлекать квартальные данные из финансовых отчетов, найденных в yahoo finance, и не мог найти способ сделать это. Я думал, что могу clickbuttons с финансовой домашней страницы (E.x https://finance.yahoo.com/quote/SBUX/financials), но я не смог найти способ найти веб-элементы. Во-первых, мне нужно нажать кнопку Balance Sheet.Поиск кнопок на Yahoo Finance с использованием Selenium [JAVA]

Здесь все HTML код для этой кнопки:

<div class="Fz(s) Fw(500) D(ib) Pend(15px) H(18px)" data-reactid=".27ez98r5x0u.1.$0.0.0.3.1.$main-0-Quote-Proxy.$main-0-Quote.2.0.0.0.1.1:$balance.0"> 
<span data-reactid=".27ez98r5x0u.1.$0.0.0.3.1.$main-0-Quote-Proxy.$main-0- Quote.2.0.0.0.1.1:$balance.0.0">Balance Sheet 
</span> 
</div> 

Далее мне нужно найти и нажмите читальном кнопку Quartely

<div class="Fz(s) Fw(500) D(ib) Pend(15px) H(18px) C($finDarkLink):h Mend(15px) C($actionBlue)" data-reactid=".27ez98r5x0u.1.$0.0.0.3.1.$main-0-Quote-Proxy.$main-0-Quote.2.0.0.0.1.2.$1.0"> 
<span data-reactid=".27ez98r5x0u.1.$0.0.0.3.1.$main-0-Quote-Proxy.$main-0-Quote.2.0.0.0.1.2.$1.0.0">Quarterly 
</span> 
</div> 

Любая помощь по обнаружению этих кнопок или альтернативные методы обнаружения эта финансовая информация была бы полезна.

+0

Лучше вы можете найти некоторые веб-сервисы, если они предоставляют одинаковые – Deepak

ответ

0

Найти с помощью XPaths:

//button[contains(.,'Balance Sheet')] 
//button[contains(.,'Quarterly')] 
0

На самом деле эти кнопки готовятся нажать после загрузки страницы, поэтому вы должны попробовать использовать WebDriverWait ждать, пока эти кнопки не становятся видимыми и готовы нажать, как показано ниже:

String url = "https://finance.yahoo.com/quote/SBUX/financials"; 

driver.get(url); 

WebDriverWait wait = new WebDriverWait(driver, 20); 

WebElement balanceSheet = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//span[text() = 'Balance Sheet']"))); 
balanceSheet.click(); 


WebElement quarterly = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//span[text() = 'Quarterly']"))); 
quarterly.click(); 
-1

Есть ли возможность вытащить ежеквартальный баланс из финансовых показателей yahoo через excel VBA. Я очень стараюсь извлекать ежеквартальный отчет о прибылях и убытках, баланс и денежный поток с помощью тикера в VBA, я также не могу извлечь одну конкретную позицию, например: доход или чистая прибыль или денежные средства и денежные эквиваленты и т. Д., Я новый для VBA только новичок.

+0

Если у вас есть какие-либо проблемы, разместите его как * Вопрос *. Не отправляйте свою проблему на должности в качестве * ответа *. – mmushtaq

Смежные вопросы