【问题标题】:How to get span data with lxml如何使用 lxml 获取跨度数据
【发布时间】:2020-09-02 18:39:45
【问题描述】:

我正在尝试从bloombergs 网站获取价格变化数据,但我似乎无法获取信息。

import requests
import lxml.html as lx

bb = 'https://www.bloomberg.com/quote/AAPL:US'

results = dict()

bb1 = requests.get(bb)
p1 = lx.fromstring(bb1.content)
p1xpath = p1.xpath('//span[contains(@id,"changeAbsolute")]')
for y, p1xpath in enumerate(p1xpath):
    span_id = p1xpath.xpath('.//@id')[0]
    span_text = [x.strip() for x in p1xpath.xpath('.//text()')]
    results[i] = dict(id=span_id, text = span_text)
    print (results)

我是个菜鸟,所以简单的解释会很有帮助。谢谢

【问题讨论】:

  • xpath 返回空列表,这就是您没有得到结果的原因
  • 我尝试了多种不同的方法,但除了一个空列表之外似乎什么也得不到。
  • 你确定你使用的网址是正确的
  • 你在寻找什么价值? -1.83?您的预期输出的视觉效果将有很大帮助
  • 大家好。所以。我实际上是在看错误的问题。事实证明,请求响应是他们的“你是机器人吗?”。所以我决定改用雅虎金融,它工作得很好。感谢您的所有帮助。这些信息帮助很大。

标签: python html lxml


【解决方案1】:

所以。我实际上是在看错误的问题。事实证明,请求响应是他们的“你是机器人吗?”。所以我决定改用雅虎金融,它工作得很好。

komatiraju032 和 sammywemmy 回答了这个问题。通过询问我是否查看了错误的数据。我是。

【讨论】:

    猜你喜欢
    • 2017-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-22
    • 2013-10-21
    • 1970-01-01
    • 2014-12-07
    • 2016-02-07
    相关资源
    最近更新 更多