0

我从 youtube 的 v3 api 获取持续时间值。

然后我想将该值传递给 isodate 函数,该函数将 iso 格式转换为秒。

       ytContentDetails = requests.get("https://www.googleapis.com/youtube/v3/videos?part=contentDetails&id=%s&key=%s"%(ytID, ytAPIkey)).json()
       ytDUR = ytContentDetails['items'][0]['contentDetails']['duration']
       print ytDUR
       ytTime = isodate.parse_duration('%f') ytDUR

但我不断收到错误消息。

       ytTime = isodate.parse_duration('%r')% ytDUR
       File "/Library/Python/2.7/site-packages/isodate/isoduration.py", line 99, in parse_duration
       raise ISO8601Error("Unable to parse duration string %r" % datestring)
       ISO8601Error: Unable to parse duration string '%f'

我哪里错了?

我尝试将 %f 更改为不同的转换,但无济于事。

我认为这是一个线索...

       parse_duration:
       parses an ISO 8601 duration string into a timedelta or Duration object.

ytDUR 值输出类似 ....

       PT6M19S
4

1 回答 1

1

为什么不只是ytTime = isodate.parse_duration(ytDUR)?它对我有用,即isodate.parse_duration('PT6M19S')

于 2013-08-16T19:44:52.893 回答