Проблема в получении значения datepicker при очистке веб-страниц с помощью Python

#python #web-scraping

Вопрос:

Я удаляю значение даты, введенное в поле выбора даты ниже. Я нашел HTM-файл в датапикере. Однако он не показывает значения даты, и мой код Python ничего не возвращает. Я использую неправильный метод?

Ссылка на веб-страницу: https://rate.amcm.gov.mo/en/financial-information/middle-rates

Целевой HTML: <input type="text" class="date-picker" id="display-picker">

Целевая дата

Мой код на Python:

 from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from time import sleep

url = 'https://rate.amcm.gov.mo/en/financial-information/middle-rates'
driver = webdriver.Chrome(ChromeDriverManager().install())
driver.get(url)
time.sleep(5)
input_date = driver.find_element_by_id('display-picker')
print(input_date.text)
driver.close()
 

Комментарии:

1. Да, значение даты (в виде ставок) собирается с помощью запроса post. Затем какой-нибудь js-скрипт заполняет ввод HTML. Посмотрите на F12->Сеть->>XHR и создайте запрос post с пакетом «запросы».

2. Большое спасибо! Я успешно получил данные через XHR. Но дата, которую я получил, похожа на «1629388800». Знаете ли вы, как преобразовать его в обычный формат?

Ответ №1:

Если дата в этом формате — 1629388800 то вы можете преобразовать ее в читаемый формат с помощью datetime модуля.

 from datetime import datetime
x = 1629388800
d = datetime.strftime(datetime.fromtimestamp(x), '%d/%m/%Y')
print(d)
 
 19/08/2021
 

Комментарии:

1. Спасибо ce.teuf и Ram, проблема решена! Для тех, кому нужна дополнительная информация, вы можете обратиться сюда за дополнительной информацией о том, как получить ответ XHR.