You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Twint爬取推特时遭遇时间格式匹配错误求助

解决Twint时间格式匹配错误问题

错误根源

你遇到的time data '2020–04–29 00:00:00' does not match format '%Y-%m-%d %H:%M:%S'错误,核心原因是日期字符串里的分隔符是中文全角长破折号(–),而Twint内部解析时间时依赖的是英文半角短横杠(-),导致格式匹配失败。

解决方案

方法1:直接替换异常分隔符

在将日期赋值给Twint配置前,把中文破折号替换成英文短横杠即可快速修复:

config = twint.Config()
config.Pandas = True

payload = json.dumps(request.GET)
payload = json.loads(payload)

config.Search = payload.get('keyword')
config.Lang = payload.get('language','en')
config.Limit = int(payload.get('limit',100))

startDate = payload.get("startDate",None)
if startDate:
    # 替换中文长破折号为英文短横杠
    startDate = startDate.replace('–', '-')
    config.Since = startDate

endDate = payload.get("endDate",None)
print(startDate,endDate)
if endDate:
    endDate = endDate.replace('–', '-')
    config.Until = endDate    

twint.run.Search(config)

方法2:用datetime标准化日期格式(更稳健)

如果担心输入的日期存在其他不规范情况,可以用datetime模块解析并重新生成标准格式的日期字符串,彻底避免格式兼容问题:

from datetime import datetime

config = twint.Config()
config.Pandas = True

payload = json.dumps(request.GET)
payload = json.loads(payload)

config.Search = payload.get('keyword')
config.Lang = payload.get('language','en')
config.Limit = int(payload.get('limit',100))

startDate = payload.get("startDate",None)
if startDate:
    # 先替换异常分隔符,再解析为datetime对象
    clean_start = startDate.replace('–', '-')
    try:
        dt_start = datetime.strptime(clean_start, '%Y-%m-%d')
        # 生成Twint要求的标准格式字符串
        config.Since = dt_start.strftime('%Y-%m-%d')
    except ValueError:
        print("起始日期格式错误,请传入YYYY-MM-DD格式的日期")

endDate = payload.get("endDate",None)
print(startDate,endDate)
if endDate:
    clean_end = endDate.replace('–', '-')
    try:
        dt_end = datetime.strptime(clean_end, '%Y-%m-%d')
        config.Until = dt_end.strftime('%Y-%m-%d')
    except ValueError:
        print("结束日期格式错误,请传入YYYY-MM-DD格式的日期")    

twint.run.Search(config)

内容的提问来源于stack exchange,提问作者Keshav Krishna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 22:55:19