连接数据库 postgresql 时出现问题

问题描述 投票:0回答:1

我正在尝试读取工作表并将它们插入到 postgresql 中以使我的 etl_table 中的暂存故事功能正常工作,但现在我收到一个错误,我不知道它是什么:

  main.ipynb
    db_session = database_handler.create_connection('config.json')
    data_handler.read_dataset_create_tables_and_insert_data(db_session)
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    ERROR:root:An error occurred: <urlopen error unknown url type: https>
    2023-11-28 00:50:23.483310 - Failed to connect to database (database_handler.py) ##### <urlopen error unknown url type: https>
    2023-11-28 00:50:23.485303 - Failed to connect to database (database_handler.py) ##### <urlopen error unknown url type: https>
and here is my code : 


 def read_sheet_as_dataframe(sheet_info):
    file_type = sheet_info["type"]
    file_config_parameter = sheet_info["config"]
    sheet_name = sheet_info["sheet_name"]

    df = data_handler.read_data_as_dataframe(file_type, file_config_parameter)
    return df, sheet_name

def read_dataset_create_tables_and_insert_data(db_session):
    sheets_info = [
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=countries', "sheet_name": "countries"},
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=avg_temperature', "sheet_name": "avg_temperature"},
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=prevalence_of_undernourishment', "sheet_name": "prevalence_of_undernourishment"},
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=disaster_types', "sheet_name": "disaster_types"},
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=gdp', "sheet_name": "gdp"},
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=world_population', "sheet_name": "world_population"},
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=natural_disasters', "sheet_name": "natural_disasters"},
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=disaster_magnitude', "sheet_name": "disaster_magnitude"},
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=worldcities', "sheet_name": "worldcities"},
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=share_without_improved_water', "sheet_name": "share_without_improved_water"},
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=magnitude_scale', "sheet_name": "magnitude_scale"},
        {"type": lookups.FileType.CSV, "config": 'https://docs.google.com/spreadsheets/d/18GUCOh6BzZ6eLeM1fbLGrnPpW2DeUUal-jqci93w6R8/gviz/tq?tqx=out:csv&sheet=valuable_country_data', "sheet_name": "valuable_country_data"},


    ]

    for sheet_info in sheets_info:
        df, sheet_name = read_sheet_as_dataframe(sheet_info)
        create_table_and_insert_data(db_session, df, sheet_name)

所以基本上我正在尝试阅读我的工作表并将它们插入到数据库中,直到我收到此错误为止,如果有人有修复程序,我将非常感激。预先感谢您!

python postgresql etl data-engineering
1个回答
0
投票

我建议您创建一个干净的Python环境,因为这可能与SSL安装有关(请参阅相关链接)。

如果您提供如何创建连接的其他详细信息,也将有助于回答您的问题。

© www.soinside.com 2019 - 2024. All rights reserved.