网站抓取更新价值

时间:2019-02-21 10:01:33

标签: python beautifulsoup request

我是python的新手,我试图获取一个不断更新的值。当您首次进入站点时,该值显示“ laddar temperatureatur(装载温度)”,然后过一会儿继续显示实际温度。当我运行脚本时,唯一得到的就是“加载温度”值。我猜想这与每次我运行该脚本都会重新加载站点有关。我如何获得它以便它“停留”在站点上并在“加载温度”之后收集信息?

站点:http://s-websrv02.lulea.se/ormberget/

from bs4 import BeautifulSoup
import requests
import time

r = requests.get("http://s-websrv02.lulea.se/ormberget/")

soup = BeautifulSoup(r.text, "html.parser")

match = soup.find("div", id="ReloadThis").text

for item in match:
print(match)
time.sleep(20)

1 个答案:

答案 0 :(得分:0)

使用XHR调用获取温度。

下面的代码应返回温度

import requests

r = requests.get('http://s-websrv02.lulea.se/ormberget/Orm_Stadium.php')
print(r.text.strip())

如果您想定期获取温度值,请执行以下操作:

import time
import requests

collected_data = []
SLEEP_TIME = 5
while True:
    r = requests.get('http://s-websrv02.lulea.se/ormberget/Orm_Stadium.php')
    value = r.text.strip() if r.status_code == 200 else '-1000'
    collected_data.append({'time':time.time(), 'value':value})
    time.sleep(SLEEP_TIME)