首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Filemaker Pro和Import.IO.如何使用Import.IO API导入Import.IO?

Filemaker Pro和Import.IO.如何使用Import.IO API导入Import.IO?
EN

Stack Overflow用户
提问于 2016-03-06 04:30:17
回答 2查看 299关注 0票数 1

我有一个不错的Import.IO网络刮刀,我想设置自动上传从Import.IO到Filemaker。我花了几个月的时间在这上面,我不知道为什么它不起作用。这就是我所做的。我将不详细讨论Import.IO内容,因为最终您可以通过它们的API在Excel、CSV、JSON或使用RESTful类型技术(这正是我想要的)中导出选项。我有我的API,但是当我将它导入FMP时,我总是会得到这个错误

“1,char 1中的错误”。

我手工开发的样式表如下所示:

代码语言:javascript
复制
<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="/">
        <FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult">
            <METADATA>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Input" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Result Number" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Widget" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Data Origin" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Result Row" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Source Page URL" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Link" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="f8" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="f9" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="f10" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Address" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Price" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Availability" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Baths" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Beds" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Cars" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="New" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Open" TYPE="TEXT"/>
                <FIELD EMPTYOK="YES" MAXREPEAT="1" NAME="Agent" TYPE="TEXT"/>
            </METADATA>
            <RESULTSET>
                <ROW>
                    <COL><DATA><xsl:value-of select="@input"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Result Number"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Widget"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Data Origin"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Result Row"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Source Page URL"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Link"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@f8"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@f9"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@f10"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Address"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Price"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Availability"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Baths"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Beds"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Cars"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@New"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Open"/></DATA></COL>
                    <COL><DATA><xsl:value-of select="@Agent"/></DATA></COL>
                </ROW>
            </RESULTSET>
        </FMPXMLRESULT> 
    </xsl:template>
</xsl:stylesheet>

问题:

  1. 如何根据来自Import.IO的数据验证上述样式表?我很高兴将它导出到Excel中,然后从那里进行测试。
  2. 上面的样式表有什么明显的问题吗?
  3. 我如何将我的API放在这里,以便其他人可以在FMP中测试它?

FMP是一个很好的系统,但说实话,它的RESTful文档糟糕透顶。我对web服务、XML导入和RESTful协议知之甚少,因此任何其他建议都将不胜感激。

谢谢

更新看上去,伙计们,我不是XSL专家,也不是真正了解XSL和样式表的人。我想要的只是能够使用来自Import.IO的API将数据导入到Filemaker。就这么简单!我不想创建一个服务器,一个翻译器,或者花哨的东西。我认为FMP API已经足够了,他们的视频也暗示了这一点(虽然Import.IO不是这样的)。所以,除非你们愿意进入我的世界,创建一个免费的Import.IO帐户,创建一个API并使用FMP进行测试,否则我真的不知道我还能给你什么。我完全是XML、XSL和RESTful的初学者,不管它叫什么。我也不是要你用勺子喂我。我只是需要一个适当的例子,如何使这个工作-如果它在所有的工作!我唯一的选择是将我的web抓取数据从Import.IO导出为CSV,并将其直接导入到临时表中。太简单了,但是太手动了!必须有一个自动的解决办法。谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-06 21:16:02

上面的样式表有什么明显的问题吗?

是的,有几件事。首先,XML中的名称不能包含空格-因此,当您调用:

代码语言:javascript
复制
<xsl:value-of select="@Result Number"/>

或者:

代码语言:javascript
复制
<xsl:value-of select="@Data Origin"/>

这将产生一个错误。

接下来,您的上下文是根/节点,它不能有属性。因此,all您的DATA元素将为空。

这并不意味着您报告的错误是由这些缺陷中的任何一个造成的。很可能不是。

我如何将我的API放在这里,以便其他人可以在FMP中测试它?

您的API没有URL吗?

票数 1
EN

Stack Overflow用户

发布于 2016-03-06 19:11:14

除非您要传递一个具有19个属性的节点,否则样式表是没有意义的。这就引出了第二个问题--为什么你的一些属性有空格。我现在不使用Import.IO,但是这将违反一般的XML规则。

不验证样式表,应该验证XML。样式表要么工作,要么不工作-您只需测试它。

尝试使用样式表上的帮助发布示例XML。

FIleMaker不是RESTful应用程序,我不知道您指的是什么文档。如果您需要使用RESTful,请查看restfm:

http://www.restfm.com/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35823117

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档