繁体   English   中英

如何从 Python 中的网络选项卡读取?

[英]How to read from the network tab in Python?

使用 Selenium、Requests 和 Beautiful Soup,我希望能够找到并打印此 .m3u8 链接(或此处显示的任何链接),但我不知道在 Python 中显示请求。

在此处输入图片说明

def locator(url):
    driver = sp.driver # just geckodriver with profile
    driver.get(url)
    sleep(4)
    # from here needs to somehow access the network tab & locate GET requests with Host == "cfvod.kaltura.com"

不得不使用 ChromeDriver、PyChrome 和 DevTools 协议,但这有效:

def outputstart(**kwargs):
    print("START ", kwargs)

driver = sp.driver # my chromedriver profile with an argument added for port 8000

dev_tools = pychrome.Browser(url="http://localhost:8000")
tab = dev_tools.list_tab()[0]
tab.start()

url = 'https://google.com'

start = time.time()
driver.get(url)
tab.call_method("Network.emulateNetworkConditions",
            offline=False,
            latency=100,
            downloadThroughput=93750,
            uploadThroughput=31250,
            connectionType="wifi")

def outputstart(**kwargs):
    print("START ", kwargs)

tab.call_method("Network.enable", _timeout=20)
tab.set_listener("Network.requestWillBeSent", outputstart)

https://stackoverflow.com/a/68363046/8491363

我使用 selenium(当前版本 3.0)来读取网络日志。 查看上面的链接。

另一种方法是使用 Selenium 4.0,但它仍处于测试状态。 当 4.0 发布时,它将正式支持 Chrome 开发工具的东西。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM