如何将Web收获数据保存到数据库

时间:2013-05-02 14:32:17

标签: java web-scraping webharvest

我正在使用网络收集工具来删除数据,我正在获取所需的数据,即产品的名称和价格。

这是我的配置文件。

<include path="functions.xml"/>

<!-- collects all tables for individual products -->
<var-def name="products">    
    <call name="download-multipage-list">
        <call-param name="pageUrl">http://www.amazon.de/s/ref=nb_sb_noss?__mk_de_DE=AMAZON&amp;url=search-alias%3Daps&amp;field-keywords=AT300-103%20TEGRA%203%201GB</call-param>
        <call-param name="nextXPath">//a[@class="pagnNext"]/@href</call-param>
        <call-param name="itemXPath">//div[@class="fstRow prod"]</call-param>
        <call-param name="maxloops">10</call-param>
    </call>
</var-def>

<!-- iterates over all collected products and extract desired data -->            
<file action="write" path="reports/catalog.xml" charset="UTF-8">
    <![CDATA[ <catalog> ]]>
    <loop item="item" index="i">
        <list><var name="products"/></list>
        <body>
            <xquery>
                <xq-param name="item" type="node()"><var name="item"/></xq-param>
                <xq-expression><![CDATA[
                        declare variable $item as node() external;

                        let $name := data($item//*[@class='lrg bold'])
                        let $price := data($item//*[@class='bld lrg red'])
                            return
                                <product>
                                    <name>{normalize-space($name)}</name>
                                    <price>{normalize-space($price)}</price>
                                </product>
                ]]></xq-expression>
            </xquery>
        </body>
    </loop>
    <![CDATA[ </catalog> ]]>
</file>

现在我正在尝试将此名称和价格信息移动到包含两列名称和价格的mysql数据库表。我得到了我们必须使用数据库标签的信息。但没有获得如何使用它的信息。

你能帮我解决一下如何在我的配置文件中配置它。

提前致谢。

  • Sahiti

1 个答案:

答案 0 :(得分:0)

请访问web-harvest.sourceforge.net/manual.php#database并尝试按照给定的方式实施。