如何在请求中保持连接活跃

-4 投票
1 回答
2616 浏览
提问于 2025-04-20 00:40
import requests
from bs4 import BeautifulSoup
r = requests.get('https://www.google.com/finance?q=NSE%3Awipro')
r.content
bt = BeautifulSoup(r.content,"lxml")
span = bt.find_all('span',class_="pr")
span[0].contents
span1= span[0].contents
res = span1[1].contents
chg = bt.find_all('span', class_="chg")
res1 = chg[0].contents[0]
res2 = chg[1].contents[0]
print "Last Trading Price :" + str(res)
print "change:"              + str(res1)
print "Change in: %"          + str(res2)

这是我的程序。当运行这个程序时,它只显示实时数据,然后就结束了。我想让它一直保持运行。

1 个回答

3

在发送请求时,使用一个 requests.session 会话。

import requests

session = requests.session()
r = session.get('https://www.google.com/finance?q=NSE%3Awipro')
r.content
...
r = session.get('https://www.google.com/finance?q=NSE%3Awipro')

这样连接会保持打开状态,之后对同一个服务器的请求会使用同一个连接。需要注意的是,远程服务器可能会设置超时,决定在一段时间后关闭连接(比如5到15秒)。

撰写回答