使用 PyFileMaker2 从 FileMaker Pro 12 数据库中提取和操作数据

Extract and manipulate data from FileMaker Pro 12 database with PyFileMaker2

我正在尝试连接到 FileMaker Pro 12.0v4 数据库以提取和处理数据。 我在 Windows10 64 位 PC 上安装了 Python 3.6.9。 我尝试连接的 FileMaker 数据库的文件名为“C:/prova.fmp12”

阅读我能够找到的关于该主题的不同材料(例如,https://code.google.com/archive/p/pyfilemaker/, https://pypi.org/project/pyfilemaker2/),我成功导入了 PyFileMaker2 模块

import pyfilemaker2
from pyfilemaker2.server import FmServer
from pyfilemaker2.metadata import FmMeta
from pyfilemaker2.errors import FmError

下一步应该是传递以下命令:

fm = FmServer('login:password@filemaker.domain.com')

但是,我不明白 'login:password@filemaker.domain.com' 字符串实际上代表什么。 我做了多次试验,但每次我都试图获取数据库的名称时:

fm.get_db_names()

我收到了以下消息:

InvalidSchema: No connection adapters were found for 'login://None:80password@filemaker.domain.com?-dbnames='

因此,我不清楚如何与文件建立实际连接 ('c:/prova.fmp12') 以及如何提取数据。

PyFileMaker 连接到 FileMaker Server 实例,您的 FileMaker 文件需要托管在启用 XML 共享的 FileMaker Server 上。由于您说您的 FileMaker 文件位于 C:/prova.fmp12,我想您没有在 FileMaker Server 上托管 prova.fmp12。

login:password@filemaker.domain.com

这分解为

  • login = 具有 XML 访问权限的帐户的 FileMaker 文件用户名
  • password = FileMaker 文件密码
  • filemaker.domain.com = 指向您的 FileMaker Server 的 DNS。

来自 https://pypi.org/project/pyfilemaker2/

的文档

You will also need a FileMaker server with the XML enabled of course.