2016-07-30 7 views
6

Ich bin in der Lage, die Accept-Language-Header zu setzen, aber irgendwie bin ich nicht in der Lage, die Verbindung Header auf "Keep-Alive":Kann akzeptieren akzeptieren Sprache Header aber nicht Connection-Header? PhantomJS (Selenium WebDriver mit Python)

from selenium import webdriver 
from selenium.webdriver.common.desired_capabilities import  DesiredCapabilities 

webdriver.DesiredCapabilities.PHANTOMJS['phantomjs.page.customHeaders.Accept-Language'] = 'ru-RU' 

webdriver.DesiredCapabilities.PHANTOMJS['phantomjs.page.customHeaders.Connection'] = "keep-alive" 

driver = webdriver.PhantomJS("/home/user/bin/phantomjs",service_args=['--ignore-ssl-errors=true', '--ssl-protocol=any']) 

driver.set_window_size(1120, 550) 

driver.get("http://www.httpbin.org/headers") 

print(driver.page_source) 

Ausgang:

<html><head></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">{ 
    "headers": { 
    "Accept":  "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", 
    "Accept-Encoding": "gzip, deflate", 
    "Accept-Language": "ru-RU", 
    "Host": "www.httpbin.org", 
    "User-Agent": "Mozilla/5.0 (Unknown; Linux x86_64) AppleWebKit/538.1 (KHTML, like Gecko) PhantomJS/2.1.1 Safari/538.1" 
    } 
} 
</pre></body></html> 

ich dachte, vielleicht aus irgendeinem Grund, der Header selbst oder die Felder Fall empfindlich waren, so sah ich Beispiele für diese Header und verwendet sie genau wie es ist, aber keine Würfel. Wie setze ich den Connection-Header oder Keep-Alive-Header?

Antwort

2

Sieht so aus, als ob der Standardheader für phantomjs-Verbindung Keep-alive ist, die Site, die Sie zum Anzeigen von Headern verwenden, zeigt den Connection-Header nicht an, auch wenn PhantomJS nicht verwendet wird. Wenn Sie Ihre Anfrage mit Fiddler betrachten, können Sie sehen, dass es die Verbindung keep-alive Header hat

GET/Header HTTP/1.1 Akzeptieren: text/html, application/xhtml + xml, application/xml; q = 0.9 , /; q = 0,8
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/538,1 (KHTML, wie Gecko) PhantomJS/2.1.1 Safari/538,1

Verbindung: Keep- Lebend

Accept-Encoding: gzip, deflate Akzeptieren-Sprache: en-US, * Gastgeber: www.httpbin.org

Verwandte Themen