python - 替换保存在列表中的 url 上的日期
问题描述
我有一个包含日期的列表 [ ],保存为字符串(2020-12-01 到 2020-12-31)。我也有以下网址:
"https://api.opap.gr/draws/v3.0/1100/draw-date/{date1:%Y-%m-%d}/{date1:%Y-%m-%d}/draw-id"
我想运行一个“for循环”,它将替换列表中每个元素(日期)的 {date1:%Y-%m-%d} 。到目前为止,我已经创建了以下代码来创建“ValueError: Invalid format specifier”。
from datetime import date, timedelta, datetime
import json, requests
def days_cur_month():
d1 = date(2020, 12, 1)
d2 = date(2020, 12, 31)
delta = d2 - d1
return [(d1 + timedelta(days=i)).strftime('%Y-%m-%d') for i in range(delta.days + 1)]
print(days_cur_month())
fmt= "https://api.opap.gr/draws/v3.0/1100/draw-date/{date1:%Y-%m-%d}/{date1:%Y-%m-%d}/draw-id"
draws=[]
for i in (days_cur_month()):
url = fmt.format(date1=i)
r=requests.get(url2)
html=r.text
drawIds=json.loads(html)
print(drawIds)
有没有办法做到这一点?
解决方案
.strftime('%Y-%m-%d')
使用str.format
时移除conversion
前任:
from datetime import date, timedelta, datetime
import json, requests
def days_cur_month():
d1 = date(2020, 12, 1)
d2 = date(2020, 12, 31)
delta = d2 - d1
return [(d1 + timedelta(days=i)) for i in range(delta.days + 1)]
fmt= "https://api.opap.gr/draws/v3.0/1100/draw-date/{date1:%Y-%m-%d}/{date1:%Y-%m-%d}/draw-id"
draws=[]
for i in (days_cur_month()):
url = fmt.format(date1=i)
print(url)
输出:
https://api.opap.gr/draws/v3.0/1100/draw-date/2020-12-27/2020-12-27/draw-id
https://api.opap.gr/draws/v3.0/1100/draw-date/2020-12-28/2020-12-28/draw-id
https://api.opap.gr/draws/v3.0/1100/draw-date/2020-12-29/2020-12-29/draw-id
https://api.opap.gr/draws/v3.0/1100/draw-date/2020-12-30/2020-12-30/draw-id
https://api.opap.gr/draws/v3.0/1100/draw-date/2020-12-31/2020-12-31/draw-id
或者如果你需要使用.strftime('%Y-%m-%d')
Then 更改fmt
为
fmt= "https://api.opap.gr/draws/v3.0/1100/draw-date/{date1}/{date1}/draw-id"
推荐阅读
- angular - Angular Routing - 是否有任何属性可以添加到路由配置中以连接到组件中?
- html - 为什么我的 div 定位很奇怪?
- typescript - 根据参数中的属性强制执行函数的返回类型
- bash - glob ignore 正在立即执行 + bash 上的 1 分钟
- java - 如何强制接口出现在所有继承级别
- ios - 在 AVCaptureVideoPreviewLayer 上绘图需要一些时间才能显示
- c# - 尝试插入命令时在数据源中接收错误
- android - 片段菜单项单击
- python - 如何创建 SQLAlchemy 数据引擎以将 Pandas DF 导出到 Microsoft SQL Server
- python - 从 df 中的一列相对于另一列值获取前 2 个分数