python: Как я могу скачать данные с веб-страницы, где ссылка скрыта кнопкой загрузки?
Предположим, я хочу загрузить данные здесь: http://www.dce.com.cn/publicweb/quotesdata/memberDealPosiQuotes.html
При нажатии на кнопку, показанную ниже, я получил .csv
файл:
Я хочу сделать это автоматически, используя python, где я могу указать дату и т. Д.
Я нахожу здесь, что можно использовать панд pd.read_csv
читать данные с веб-страницы, но сначала нужно получить правильный URL-адрес. Однако в моем случае я не знаю, что такое URL.
Кроме того, я также хочу уточнить дату и договор и т.д.
Прежде чем спросить, я на самом деле попробовал инструмент разработки, я все еще не вижу URL и не знаю, как сделать его программным.
1 ответ
JavaScript exportData('excel')
результаты в форме, которая представлена. Используя Chrome devtools и панель " Сеть", вы можете определить заголовки и используемые данные публикации, а затем написать скрипт на python для отправки идентичного http-запроса.
import requests
url = 'http://www.dce.com.cn/publicweb/quotesdata/exportMemberDealPosiQuotesData.html'
formdata = {
'memberDealPosiQuotes.variety':'a',
'memberDealPosiQuotes.trade_type':0,
'contract.contract_id':'all',
'contract.variety_id':'a',
'exportFlag':'excel',
}
response = requests.post(url, data=formdata)
filename = response.headers.get('Content-Disposition').split('=')[-1]
with open(filename, 'wb') as fp:
fp.write(response.content)
Вероятно, можно найти способы изменить данные поста для получения других данных. Либо путем обратного инжиниринга, методом проб и ошибок или путем поиска какой-либо документации.
Например, вы можете включить поля для года и даты:
'year':2017,
'month':3,
'day':20