Skip to content

Language setting via @browser ignored in actual browser behavior #23

@drego85

Description

@drego85

Passing lang=Lang.Hindi to the @browser decorator does not seem to affect either:

  1. The Accept-Language HTTP request header
  2. The browser’s own UI locale

Instead, the header and UI stay on my system default (it-IT).

For example, this script

from botasaurus.browser import browser, Driver
from botasaurus.lang import Lang
  
    
@browser(lang=Lang.Hindi)
def scrape_heading_task(driver: Driver, data):    
  
   
    driver.get("https://duckduckgo.com/?t=ffab&q=what+is+my+user+agent&ia=answer")
    
    driver.short_random_sleep()
    
    print(driver.page_text)

	
# Initiate the web scraping task
scrape_heading_task()

I get:

Your user agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36
Other HTTP headers
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7
Accept-Encoding: gzip, deflate, br, zstd
Accept-Language: it-IT,it;q=0.9,en-US;q=0.8,en;q=0.7
Host: duckduckgo.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36

So there is no reference to the Hindi language set, even the browser graphically (by setting headless=False) still results in Italian.

I personally would like to change the Accept-Language identifier of Chrome.

How can I do this?

Thanks

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions