气流新手在这里,忍受我...我不明白为什么这个简单的任务失败了:
def getCarJSON():
dictCars= {'link': '/cars/acura', 'num': '1'}
with open('data/dictCars.json', 'w') as fp:
json.dump(dictCars, fp)
这是作为JSON存储在磁盘上的简单dict。为什么我会得到:
断开的DAG:[/home/user/aiffair/dags/cars.py]回溯(最后一次调用):文件“/usr/local/lib/python3.8/dist packages/aiffair/models/baseoperator.py”,init validate\u key(任务id)文件“/usr/local/lib/python3.8/dist packages/aiffairs/utils/helpers.py”第39行,在validate\key raise raise TypeError(“密钥必须是字符串”)中的第404行TypeError:键必须是字符串
我在DAG文件中有常用数据:
# Set default args
default_args = {
'owner': 'airflow',
'depends_on_past': False,
'start_date': datetime(2021, 3, 23),
'email': ['donko@gmail.com'],
'email_on_failure': True,
'email_on_retry': False,
'retries': 0,
'retry_delay': timedelta(minutes=2)
}
schedule_interval = '30 09 * * *'
# Define DAG: Set ID and assign default args and schedule interval
dag = DAG(
dag_id = 'get_cars',
default_args = default_args,
schedule_interval = schedule_interval
)
# Get cars dict
get_cars_json = PythonOperator(
task_id=getCarJSON,
python_callable=getCarJSON,
dag=dag
)
我只想在驱动器上转储数据。。。
从断开的dag消息来看,在验证tast_id属性时,似乎出现了此错误。
在下面的代码中,您将getCarJSON
函数传递给了task\u id
,而不是任务的名称,任务的名称将是字符串类型,因此会导致类型错误问题
get_cars_json = PythonOperator(
task_id='getCarJSON', # Name here was without quotations
python_callable=getCarJSON,
dag=dag
)
问题内容: 我正在尝试使用将以下内容转换为JSON : 但这导致我 该错误很可能是由于dict包含,例如: 有人可以指导我,如何从字典中删除这些元素? 问题答案: 您可以尝试像这样清理它: 这将尝试将不是字符串的任何键转换为字符串。任何无法转换为字符串或不能表示为字符串的键都将被删除。
我使用的是Python3.3,但在尝试pickle一个简单的字典时出现了一个隐秘的错误。 代码如下: 我得到:
我遵循了这个答案:Stanford nlp for python 我使用较长的文本作为输入,并遇到以下错误:
问题内容: 我正在学习python并试图将github问题转换为可读形式。使用有关如何将JSON转换为CSV的建议?我想出了这个: 其中“ issues.json”是包含我的github问题的json文件。当我尝试运行它时,我得到 我在这里想念什么?哪些是“字符串索引”?我确定一旦完成这项工作,我还会遇到更多问题,但是就目前而言,我只是希望它可以工作! 当我将陈述调整为 我得到的是…“问题”-所以
我正试图为这个问题找到一个可能的简单的解决方案。 错误堆栈跟踪 null 任何帮助都将不胜感激。
运行此代码时 我得到这个错误 read_bikeins=pdf。PdfFileReader(bikeins)回溯(最近一次呼叫最后一次): 文件“”,第1行,以read\u bikeins=pdf格式。PdfFileReader(比基恩) 文件“C:\Users\Naveen Raj\Anaconda3\lib\site packages\PyPDF2\pdf.py”,第1084行,在init s