requests.get()
просто возвращает разметку, полученную с сервера после запроса «GET», без дальнейшего выполнения на стороне клиента.
Принимая во внимание, что в контексте браузера гораздо больше можно сделать с помощью клиентского JavaScript. Я не смотрел вашу страницу специально, но, возможно, какой-то код JavaScript выполняет дальнейшую обработку.
Вместо web browser
или requests
вы можете использовать Selenium. Вы можете узнать больше об этом здесь .
Selenium позволяет вам просматривать страницы, как вы используете браузер, но также дает вам возможность автоматизировать + контролировать действия на странице с кодом Python.
Возможно, вы можете использовать Selenium Chrome Webdriver для загрузки страницы в фоновом режиме. (Или вы можете использовать драйвер Firefox).
Перейдите на chrome://settings/help
, проверьте текущую версию Chrome и загрузите драйвер для этой версии с здесь . Обязательно сохраните файл драйвера в PATH
или в той же папке, где находится скрипт Python.
Попробуйте:
from selenium.webdriver import Chrome # pip install selenium
from selenium.webdriver.chrome.options import Options
url = "http://servername/views/workbookname/dashboard1?:refresh=yes"
#Make it headless i.e. run in backgroud without opening chrome window
chrome_options = Options()
chrome_options.add_argument("--headless")
# use Chrome to get page with javascript generated content
with Chrome(executable_path="./chromedriver", options=chrome_options) as browser:
browser.get(url)
page_source = browser.page_source
Примечание
Когда вы открываете свой URL, модуль webbrowser
запускает браузер по умолчанию, в котором уже кэшированы ваши учетные данные / куки. Принимая во внимание, что если для доступа к вашему URL требуется какая-либо аутентификация или логин, вы должны будете указать это при получении страницы с использованием селена. Думайте о каждом сеансе веб-драйвера Selen как о сеансе incognito . Здесь - пример того, как имитировать вход в систему с помощью веб-драйвера.
Ссылки:
selenium - исполняемый файл chromedriver должен находиться в PATH