【问题标题】:Xpath to url for import.ioimport.io 的 url 的 Xpath
【发布时间】:2015-01-07 20:04:43
【问题描述】:

我正在获取此网站上提供的工作列表:http://telekom.jobs/global-careers

我正在尝试获取链接的 XPath 以获取有关工作的更多信息。

这是第一个链接的整个 XPath:

/html/body/div[3]/div/div[2]/div[3]/table/tbody/tr[2]/td/div/a/@href

这就是我应该粘贴到 import.io 的内容:

tr[2]/td/div/a/@href

但它不起作用,我不知道为什么。

关于工作机会页面的更多信息的链接具有 XPath:

tr[2]/td/div/a/@href
tr[4]/td/div/a/@href
tr[6]/td/div/a/@href
tr[8]/td/div/a/@href

等等。 也许这就是为什么它不起作用?因为数字不是 1,2,3 等,而是 2,4,6?还是我做错了什么?

【问题讨论】:

  • 你知道链接是用Javascript生成的吗?
  • @sputnick 是的,它有什么改变吗?如果我粘贴到 import.io '//tr[2]/td/div/a/@href' 这将显示第一个作业的链接,但在每一行中。

标签: xpath web-crawler import.io


【解决方案1】:

如果您从 URL 2.0 创建 API 并在打开 JS 但关闭 CSS 的情况下重新加载网站,您应该能够看到可折叠菜单:

DOM 在这个网站上的构造方式是,所有奇数行都有职位,而有关职位的更多信息隐藏在偶数行中。为此,我们可以使用 XPath 的 position() 属性,因此您可以在手动行训练中使用以下 XPath:

/html/body/div[3]/div/div[2]/div[3]/table/tbody/tr[position() mod 2 = 0]

其中突出显示了更多信息框,仅允许您访问其中的数据。从这里您可以简单地定位具有可用标题和链接的元素的特定属性。

链接xpath:.//a[@class=’forward jobadview’]/@href 标题 xpath:.//div[@class=’info’]//h3

话虽如此,由于网站上大量使用JS,可能无法发布,所以我们创建了一个API供您查询,您可以在这里使用它来检索相同的数据。

https://import.io/data/mine/?id=0626d49d-5233-469d-9429-707f73f1757a

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多