我正在尝试从流媒体网站获取过去所有网络条目的json。这是我在其中看到这些网络条目的屏幕截图:
按下播放按钮后,网站将在大约每11秒的时间段内加载.acc文件(例如.mp3)。我正在运行一个脚本来获取script =
指定的所有条目(这是字典列表)。该脚本最终将在250个条目处停止更新,即使该页面中仍然继续加载.acc文件。这表示为print(current==last)
,最终打印为True
。我不知道为什么getEntries
无法识别超过250项加载的内容。帮帮我吗?
代码:
script = "var performance = window.performance || window.mozPerformance || window.msPerformance || window.webkitPerformance || {}; var network = performance.getEntries() || {}; return network;"
url = 'https://www.iheart.com/live/kiss-108-1097/'
options = Options()
driver = webdriver.Firefox(options=options)
driver.get(url)
last= 0
for i in range(100):
time.sleep(11)
current = driver.execute_script(script)
print(current==last)
last=current
答案 0 :(得分:0)
显然,根据对https://stackoverflow.com/a/45859018/6158174的回答,“通过性能条目获取网络请求只会使网络请求达到/直到页面加载,而无法轮询后续的异步/ ajax调用”。改用BrowserMob代理(https://github.com/lightbody/browsermob-proxy)