【问题标题】:Using Scrapy response, XPath element doesn't exist, although Google Chrome Inspect Element shows that it does exist使用 Scrapy 响应,XPath 元素不存在,尽管 Google Chrome Inspect Element 显示它确实存在
【发布时间】:2015-07-08 17:50:05
【问题描述】:

我遇到了一个问题,根据 Scrapy 响应,我尝试使用其 XPath 选择的元素不存在。但是,当我在 Google Chrome 上检查同一页面时,该元素确实存在。

在使用 LinkedIn 高级搜索并进入结果页面后,LinkedIn 抓取中出现此问题。我想抓取结果容器中的链接。

例如:在搜索“John”的结果页面上,根据 Google Chrome 上的 Inspect Element,应该有一个 id="results-container" 的 div 元素。当我使用 Scrapy response.xpath('//div[@id="results-container]') 时,没有返回任何选择器。

结果页地址:https://www.linkedin.com/vsearch/p?firstName=John&openAdvancedForm=true&locationType=Y&rsid=4319659841436374935558&orig=ADVS

【问题讨论】:

  • 您应该考虑使用 LinkedIn API。

标签: html google-chrome xpath scrapy


【解决方案1】:

您是否尝试在浏览器的私人会话窗口中查找您提供的 URL(有时称为隐身模式)?

如果您这样做,您会看到领英的注册表。

正如 alecxe 在他的评论中建议的那样,尝试使用 LinkedIn API(它是 REST),您可以获得 XML 响应,您可以对其进行解析以收集所需的信息。

或者,您可以尝试使用 Scrapy 登录并存储身份验证凭据并重复您的请求(但我还是会使用 API)。

【讨论】:

  • 感谢您的回复!发现我看不到内容,因为它是 Javascript 生成的内容。
猜你喜欢
  • 2017-10-17
  • 2019-04-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-23
  • 1970-01-01
  • 2011-02-20
相关资源
最近更新 更多