在特定爬虫程序的输出中列出

  • 本文关键字:输出 程序 爬虫 xpath
  • 更新时间 :
  • 英文 :


我一直在为一个特定的关注点制作XML模板,用于抓取该关注点的作业。我使用xpath制作模板,但在可运行时,爬虫正在运行,没有给出错误,但没有列出作业

例如:Sopra technologies的模板(编码中提供的url)

<?xml version="1.0" encoding="UTF-8"?>
<site>
 <request-type>link</request-type>  
  <base-url><![CDATA[http://www.in.sopragroup.com/index.htm]]></base-url>
   <start-url><![CDATA[http://www.in.sopragroup.com/careers/JobListing.aspx]]>
     </start-url>
<data>
<intermediate>
    <navigation-request>
    <navigation-type>link</navigation-type>
    <url>
    <xpath></xpath>
<sub-xpath></sub-xpath>
    </url>
    </navigation-request>
    <xpath><![CDATA[//table[@class='bg_lgrey']/tbody/tr[position>2]]></xpath>
    <apply-url>
    <sub-xpath><![CDATA[td/@href]]></sub-xpath>
    </apply-url>
    <title>
    <sub-xpath><![CDATA[td/a/text()]]></sub-xpath>
    </title>
    </intermediate>
    <detail>
    <xpath><![CDATA[//table[@id='tbl']/tbody]]></xpath>
    <experience>
    <sub-xpath><![CDATA[tr[8]/td[2]/text()]]></sub-xpath>
    </experience>
    <location>
    <sub-xpath><![CDATA[tr[10]/td[2]/text()]]></sub-xpath>
    </location>
    <description>
    <sub-xpath><![CDATA[tr[2]/td[2]/text()]]></sub-xpath>
    </description>
    </detail>
    </data>
</site>
//table[@class='bg_lgrey']/tbody/tr[position>2]

这是代码中的问题之一。这样的Xpath表达式只有在tr元素有一个名为position的子元素时才有机会选择某些东西,该子元素的字符串值可转换为值大于2的数字。

你想要的

:

//table[@class='bg_lgrey']/tbody/tr[position() >2]

第二个问题

字符串"bg_lgrey"在两个url所指向的页面的源中根本不存在

最新更新