我是Python新手,并试图创建一个包含过去5年澳大利亚公共假日的dataframe。
我计划使用这个网页来检索数据,因为它包含自2014年以来每年的CSV文件。
不幸的是,指向每个文件的URL链接使用不同的命名结构,这使得很难为循环创建动态URL名称。
例如(请参阅粗体部分):
2020年数据集= data.gov.au/data/dataset/b1bc6077-dadd-4f61-9f8c-002ab2cdff10/resource/c4163dc4-4f5a-4cae-b787-43ef0fcf8d8b/download/australian_public_holidays_2020.csv
2021年数据集= data.gov.au/data/dataset/b1bc6077-dadd-4f61-9f8c-002ab2cdff10/resource/2dee10ef-2d0c-44a0-a66b-eb8ce59d9110/download/australian_public_holidays_2021.csv
import pandas
from datetime import date
# First section of URL
url1 = 'https://data.gov.au/data/dataset/b1bc6077-dadd-4f61-9f8c-002ab2cdff10/resource/'
# Second section of URL
url2 = 'MISSING PIECE'
# Third section of URL
url3 = '/download/australian_public_holidays_'
# Variable date section of URL
period = date.today().strftime('%Y')
# Last section of URL
url5 = '.csv'
# Create URL
url = url1 + url2 + url3 + period + url5
# Display URL
url由于我无法识别唯一(粗体)部分的模式,所以我正在考虑从父URL下载所有文件,然后将所有数据合并/追加到单个数据中。
所有想法都是欢迎的。
谢谢
发布于 2021-05-04 12:29:45
你可以试试这个:
import requests
req = requests.get(url)
url_content = req.content
csv_file = open('downloaded.csv', 'wb')
csv_file.write(url_content)
csv_file.close()使用这段代码,您将把数据下载到一个.csv文件中。您可以通过使用Pandas打开Python来使用它,或者将这些下载的数据带到另一个程序中。
https://stackoverflow.com/questions/67383733
复制相似问题