Selenium Python обновляет страницу с прокси до полной загрузки - PullRequest
0 голосов
/ 05 октября 2018

Я хочу отслеживать страницу, чтобы получать изменения.Поэтому я использую прокси.Не все эти прокси-серверы работают (некоторые из них могут быть заблокированы, некоторые из них должны замедляться и т. Д.), Поэтому я хочу обновлять страницу и менять прокси-сервер при каждом обновлении, и если страница не загружается в течение 2 секунд, выполните обновление.

options = webdriver.ChromeOptions()
options.add_argument('--proxy-server=http://%s' % PROXY['http']) 

        while True:   
                try:
                    browser = webdriver.Chrome(executable_path=path, options=options) 
                    browser.implicitly_wait(1) 
                    browser.get(links)
                    break
                except:
                    browser.close()
                    PROXY = proxy_reader.proxies_call(3)  #this function return a new proxy each time 

    source = browser.page_source 

Я не знаю, как сделать каждую сессию в течение 2 секунд ... Я надеюсь, что кто-то может мне помочь.

1 Ответ

0 голосов
/ 05 октября 2018

Если вы хотите создавать сеансы с новым прокси каждый раз, пока страница не загрузится в течение 2 секунд, попробуйте следующее решение

from selenium.common.exceptions import TimeoutException

while True:
    PROXY = proxy_reader.proxies_call(3)
    options = webdriver.ChromeOptions()
    options.add_argument('--proxy-server=http://%s' % PROXY['http']) 
    browser = webdriver.Chrome(executable_path=path, options=options)
    # Set page load timeout: if page not loaded within 2 seconds - raise TimeoutException
    browser.set_page_load_timeout(2)
    try:
        browser.get(links)
        break
    except TimeoutException:
        browser.quit()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...