【问题标题】:How to get content-type from selenium page_source如何从 selenium page_source 获取内容类型
【发布时间】:2016-07-11 20:04:10
【问题描述】:

我知道内容类型可以从

response = urllib2.urlopen(url)
content-type = response.info().getheader('Content-type')

现在,我需要执行 js 代码,所以我选择 selenium 和 Phantomjs 来获取网页。

driver = webdriver.PhantomJS()
driver.get(url)
source = driver.page_source

如何在不下载网页两次的情况下从源获取内容类型?我知道我可以将 response.read() 保存为 html 文件,然后驱动程序渲染本地 html 文件而无需再次下载。但是,它太慢了。有什么建议?

【问题讨论】:

    标签: python selenium phantomjs content-type


    【解决方案1】:

    Selenium 不获取标头,但您可以通过请求请求标头:

    import  requests
    
    print(requests.head(url).headers["Content-Type"])
    

    您可以使用 httplib2、urlib2 等。有许多 answers here 显示如何使用各种库请求头部。

    【讨论】:

    • 谢谢!真的很有帮助。
    • 不用担心,head 请求应该非常有效。
    猜你喜欢
    • 2019-03-11
    • 2012-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-20
    • 2013-07-12
    • 2019-10-21
    • 1970-01-01
    相关资源
    最近更新 更多