Страница является динамической, что означает, что вам понадобится отрисовать страницу перед анализом. Вы можете сделать это с помощью Selenium или Requests-HTML
Я не слишком знаком с Requests-HTML, но в прошлом я использовал Selenium. Это должно помочь вам. Кроме того, всякий раз, когда я пытаюсь вытащить тег <table>
, мне нравится использовать панды для разбора. Но BeautifulSoup по-прежнему может быть использован, просто требуется немного больше времени для перебора тегов table
, tr
, td
. Панды могут сделать эту работу за вас с .read_html()
:
from selenium import webdriver
import pandas as pd
def airtm(url):
#URLs y ejecución de BS
driver = webdriver.Chrome("C:/chromedriver_win32/chromedriver.exe")
driver.get(url)
tables = pd.read_html(driver.page_source)
df = tables[0]
df = df[df['Code'] == 'VES']
driver.close()
return df
results = airtm('https://airtmrates.com/')
Выход:
print (results)
Code Name Method Rate Buy Sell
120 VES Bolivar Soberano Bank 2526.7 2687.98 2383.68
143 VES Bolivar Soberano Mercado Pago 2526.7 2631.98 2429.52
264 VES Bolivar Soberano MoneyGram 2526.7 2776.59 2339.54
455 VES Bolivar Soberano Western Union 2526.7 2746.41 2383.68