StorageReference.downloadURL возвращает com.google.android.gms.tasks.zzu@c04d1e6 вместо фактического URL загрузки [дубликат]

Самый простой способ - использовать to_datetime :

df['col'] = pd.to_datetime(df['col'])

Он также предлагает аргумент dayfirst для европейских времен (но будьте осторожны , это isn ' t strict ).

Здесь он находится в действии:

In [11]: pd.to_datetime(pd.Series(['05/23/2005']))
Out[11]:
0   2005-05-23 00:00:00
dtype: datetime64[ns]

Вы можете передать конкретный формат :

In [12]: pd.to_datetime(pd.Series(['05/23/2005']), format="%m/%d/%Y")
Out[12]:
0   2005-05-23
dtype: datetime64[ns]

11
задан Doug Stevenson 10 June 2018 в 13:42
поделиться

2 ответа

Когда вы вызываете getDownloadUrl(), вызов является асинхронным, и вы должны подписаться на успешный обратный вызов, чтобы получить результаты:

// Calls the server to securely obtain an unguessable download Url
private void getUrlAsync (String date){
    // Points to the root reference
    StorageReference storageRef = FirebaseStorage.getInstance().getReference();
    StorageReference dateRef = storageRef.child("/" + date+ ".csv");
    dateRef.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>()
    {
        @Override
        public void onSuccess(Uri downloadUrl) 
        {                
           //do something with downloadurl
        } 
    });
}

Это вернет общедоступный неопознанный URL-адрес загрузки. Если вы просто загрузили файл, этот общедоступный URL-адрес будет включен в обратный вызов для загрузки (вам не нужно вызывать другой метод async после того, как вы его загрузили).

Однако, если все, что вы хотите, a String представления ссылки, вы можете просто вызвать .toString()

// Returns a Uri of the form gs://bucket/path that can be used
// in future calls to getReferenceFromUrl to perform additional
// actions
private String niceRefLink (String date){
    // Points to the root reference
    StorageReference storageRef = FirebaseStorage.getInstance().getReference();
    StorageReference dateRef = storageRef.child("/" + date+ ".csv");
    return dateRef.toString();
}
13
ответ дан CopsOnRoad 15 August 2018 в 14:38
поделиться
  • 1
    Использование Async я, кажется, тоже получаю сообщение об ошибке с .addSuccessListener (не удается разрешить метод). Кроме того, когда я в методе onSuccess использую что-то вроде link = downloadUrl.toString (), он говорит, что он должен быть окончательным. Любая дополнительная помощь была бы потрясающей! – Jonathan Fager 24 May 2016 в 06:40
  • 2
    1. Извините, это должно было быть addOnSuccessListener (опечатка) 2. когда вы получаете ошибку & quot; должно быть окончательным & quot; в java это означает, что проблема с закрытием. См. stackoverflow.com/questions/1299837/… для получения дополнительной информации. В основном, короткий ответ заключается в определении «ссылки», переменная как член класса, и это должно быть хорошо. – Benjamin Wulfe 24 May 2016 в 18:08
  • 3
    Работал как шарм после некоторых изменений! Thx за помощь! – Jonathan Fager 24 May 2016 в 22:01
0
ответ дан Raj 28 October 2018 в 22:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: