Я пытаюсь узнать, как использовать модуль запросов, поэтому мне не нужно разбираться с Selenium.
Это мой код, который печатает таблицу с веб-страницы.
Я не могу понять, как я мог бы использовать запросы, чтобы сделать этот код быстрее и на питоне c.
#my imports
import pandas as pd
from selenium import webdriver
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.common.exceptions import TimeoutException, NoSuchElementException,StaleElementReferenceException
from datetime import datetime
import untangle,xmltodict,glob, os, csv, time
from openpyxl import load_workbook
#Paths that i use later in code
path = r"G:\Meu Drive\Balanços\\"
pathxml =r"C:\Users\GuilhermeMachado\Documents\XML\\"
#Pandas table configs
pd.set_option('display.max_rows', 500)
pd.set_option('display.max_columns', 500)
pd.set_option('display.width', 1000)
#chromedriver options
options = webdriver.ChromeOptions()
options.add_argument('disable-infobars')
options.add_argument("--disable-extensions")
options.add_argument("--incognito")
options.add_experimental_option("prefs", {
"download.default_directory": pathxml,
"download.prompt_for_download": False,
"download.directory_upgrade": True,
"safebrowsing.enabled": True
})
driver = webdriver.Chrome(options=options)
driver.implicitly_wait(2)
#URL i want to get data from
driver.get('http://www.b3.com.br/pt_br/produtos-e-servicos/negociacao/renda-variavel/fundos-de-investimentos/fii/')
#driver.maximize_window()
time.sleep(2)
iframe = WebDriverWait(driver, 20).until(
EC.presence_of_element_located((By.ID, 'bvmf_iframe')))
driver.switch_to.frame(iframe)
#the table i need to scrap
tabel = WebDriverWait(driver, 20).until(
EC.presence_of_element_located((By.XPATH, '//table[@class="responsive"]')))
time.sleep(2)
df = pd.read_html(driver.page_source)[0]
print(df)