Я хочу получить доступ к XML-файлу, который находится в общедоступном хранилище Google.Я попытался сделать следующее:
import requests url = 'https://storage.cloud.google.com/gcp-public-data-sentinel-2/tiles/04/Q/FJ/S2A_MSIL1C_20190126T210921_N0207_R057_T04QFJ_20190126T221757.SAFE/MTD_MSIL1C.xml' response = requests.get(url)
В результате получился код страницы входа в Google, а не XML-файл, к которому я хотел получить доступ.Как мне получить доступ к этим данным в python?
Чтобы загрузить файл напрямую ( без входа в Google ), вам необходимо изменить URL-адрес, например:
С :
https://storage.cloud.google.com/gcp-public-data-sentinel-2/tiles/04/Q/FJ/S2A_MSIL1C_20190126T210921_N0207_R057_T04QFJ_20190126T221757.SAFE/MTD_MSIL1C.xml
К :
https://storage.googleapis.com/gcp-public-data-sentinel-2/tiles/04/Q/FJ/S2A_MSIL1C_20190126T210921_N0207_R057_T04QFJ_20190126T221757.SAFE/MTD_MSIL1C.xml
Образец Python:
import requests u = "https://storage.googleapis.com/gcp-public-data-sentinel-2/tiles/04/Q/FJ/S2A_MSIL1C_20190126T210921_N0207_R057_T04QFJ_20190126T221757.SAFE/MTD_MSIL1C.xml" r = requests.get(u) open('MTD_MSIL1C.xml', 'wb').write(r.content)
MTD_MSIL1C.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <n1:Level-1C_User_Product xmlns:n1="https://psd-14.sentinel2.eo.esa.int/PSD/User_Product_Level-1C.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://psd-14.sentinel2.eo.esa.int/PSD/User_Product_Level-1C.xsd"> <n1:General_Info> <Product_Info> <PRODUCT_START_TIME>2019-01-26T21:09:21.024Z</PRODUCT_START_TIME> <PRODUCT_STOP_TIME>2019-01-26T21:09:21.024Z</PRODUCT_STOP_TIME> <PRODUCT_URI>S2A_MSIL1C_20190126T210921_N0207_R057_T04QFJ_20190126T221757.SAFE</PRODUCT_URI> <PROCESSING_LEVEL>Level-1C</PROCESSING_LEVEL> <PRODUCT_TYPE>S2MSI1C</PRODUCT_TYPE> ...
Примечания: