Я снова пытаюсь попытать удачи.На этот раз я использую python-3.6, чтобы попытаться преобразовать таблицу с https://www.reuters.com/finance/stocks/financial-highlights/KEPL3.SA в информационный фрейм, чтобы построить рейтинг Пиотроски F для компаний, зарегистрированных на бразильской фондовой бирже BOVESPA.Хотя я посмотрел в Интернете и нашел решения Quantopian и Quandl (готовые и бесплатные), они, похоже, не работают с бразильскими активами, поэтому я намерен хотя бы начать строить что-то подобное.Я начинаю с python и красивого супа, так что не берите в голову мой тупой код.
Это то, что я сделал до сих пор:
import requests, bs4
res = requests.get("https://www.reuters.com/finance/stocks/financial-highlights/KEPL3.SA")
res.raise_for_status()
rawsoup = bs4.BeautifulSoup(res.text, "lxml")
for row in rawsoup.find_all('tr'):
cols = row.find_all('td')
print(cols)
Что дает мне следующий результат:
$ python3 reuters_data.py
[]
[]
[<td>P/E Ratio (TTM)</td>, <td class="data">--</td>, <td class="data">15.32</td>, <td class="data">24.24</td>]
[<td>
P/E High - Last 5 Yrs.</td>, <td class="data">67.86</td>, <td class="data">36.54</td>, <td class="data">39.87</td>]
[<td>
P/E Low - Last 5 Yrs.</td>, <td class="data">9.48</td>, <td class="data">8.71</td>, <td class="data">15.24</td>]
[<td colspan="5"></td>]
[<td>
Beta</td>, <td class="data">0.64</td>, <td class="data">1.33</td>, <td class="data">1.01</td>]
[<td colspan="5"></td>]
[<td>
Price to Sales (TTM)</td>, <td class="data">0.43</td>, <td class="data">1.29</td>, <td class="data">2.27</td>]
[<td>
Price to Book (MRQ)</td>, <td class="data">0.58</td>, <td class="data">2.13</td>, <td class="data">2.70</td>]
[<td>
Price to Tangible Book (MRQ)</td>, <td class="data">0.65</td>, <td class="data">2.74</td>, <td class="data">5.41</td>]
[<td>
Price to Cash Flow (TTM)</td>, <td class="data">--</td>, <td class="data">9.83</td>, <td class="data">15.03</td>]
.
.
.
[<td><strong># Net Buyers:</strong></td>, <td class="data"> <span class="changeUp">1</span> </td>]
(в середине я опустил часть результатов, но все это есть)
Теперь я достиг стены и не знаю, как правильно преобразовать этов кадре данных, так что я действительно могу сделать математику с этими числами в таблице.
Любая помощь приветствуется, и если мой источник плохой или есть лучший, пожалуйста, не стесняйтесь указать мне.
Большое спасибо.Ждем ответов.