2017-10-12 1 views
2

J'ai joué avec Selenium + Chromedriver et j'ai remarqué que j'obtiens des résultats différents selon si le sans-tête est activé ou désactivé. Après quelques recherches, j'ai découvert que "headless" n'inclut pas l'en-tête Accept-Language.Le sélénium avec le chromedriver donne des résultats différents basés sur "sans tête".

Est-il possible d'ajouter manuellement ceci dans les en-têtes?

+0

Voyez si cela aide? https://gist.github.com/c089/a5cbb834f9b54004de9b –

+0

en ce moment je suis en train de l'en-tête comme ça, mais il est de ne pas ajouter l'en-tête '\t \t \t chromeOptions.put (« args », Arrays.asList (" sans tête " "fenêtre size = 1200x600", \t \t \t \t \t" --user agent = Mozilla/5.0 (Windows NT 10.0, Win64, 64 bits) AppleWebKit/537,36 (KHTML, comme Gecko) Chrome/Safari 61.0.3163.100 /537.36" , \t \t \t \t \t "--lang = fr-fr, fr; q = 0,8")); ' – Arya

+0

un rapport de bogue chromedriver puis –

Répondre

1

C'est ce que Google Chrome fait. Un moyen de contourner ce serait d'utiliser un proxy et de modifier les en-têtes pour vous. Ou vous pouvez utiliser le pilote Firefox car ce pilote n'envoie pas d'en-têtes différents lors de l'utilisation de l'option headless.