@@ -15,28 +15,38 @@ import os
1515import time
1616from typing import List
1717
18+
1819webdriver_path = os.environ.get(" GECKO_DRIVER" )
1920MAX_PAGE_SIZE = 999
2021
2122options = Options()
2223# options.add_argument('--headless')
2324options.add_argument(' --disable-gpu' )
25+
2426options.set_preference(" general.useragent.override" , " Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0" )
2527# Make browser automation less detectable
2628options.set_preference(" dom.webdriver.enabled" , False )
2729options.set_preference(' useAutomationExtension' , False )
2830
31+ options.add_argument(" --disable-infobars" )
32+ options.set_preference(" excludeSwitches" , " enable-automation" )
33+
34+ # # emulate user's profile
2935# options.set_preference('--user-data-dir', '/tmp/selenium-browser')
3036# options.set_preference('--profile-directory', 'Default')
3137
32-
33- service = Service(webdriver_path)
34- # https://www.selenium.dev/documentation/
35- driver = webdriver.Firefox(service = service, options = options)
36- # driver = webdriver.Chrome(service=service, options=options)
38+ driver = webdriver.Firefox(service = Service(webdriver_path), options = options) # driver = webdriver.Chrome(service=service, options=options)
3739driver.implicitly_wait(5 )
38- ```
3940
41+ # # doesn't work
42+
43+ # # arguments
44+ # options.add_argument("--disable-blink-features=AutomationControlled")
45+ # options.add_argument("--timezone=Europe/Berlin")
46+
47+ # # driver after creation adjustment
48+ # driver.execute_cdp_cmd("Emulation.setTimezoneOverride",{"timezoneId": "Europe/Berlin"} )
49+ ```
4050
4151``` py
4252url= ' https://www.rewe.de/angebote/nationale-angebote/'
@@ -58,6 +68,6 @@ shadow_root = driver.execute_script('return arguments[0].shadowRoot', host_eleme
5868button_inside_shadow = shadow_root.find_element(By.CSS_SELECTOR , click_shadow_root_button_before[1 ])
5969# driver.execute_script('return arguments[0].click()', button_inside_shadow)
6070button_inside_shadow.click()
61-
6271```
6372
73+ ##
0 commit comments