Skip to content

Commit d5672fa

Browse files
committed
add proxy test
1 parent d94fcb8 commit d5672fa

3 files changed

Lines changed: 46 additions & 6 deletions

File tree

Python/Selenium/multiple_Selenium.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
11
from selenium import webdriver
22
from selenium.webdriver.chrome.options import Options
33
from selenium.webdriver.chrome.service import Service
4-
4+
import time
5+
from selenium.webdriver.common.by import By
6+
7+
58
options = Options()
69
options.add_argument('--disable-dev-shm-usage')
710

811
# to avoid handshake failed with fatal error ssl_error_ssl
9-
options.add_argument('--ignore-certificate-errors-spki-list')
10-
options.add_argument('--ignore-ssl-errors')
11-
12+
#options.add_argument('--ignore-certificate-errors-spki-list')
13+
#options.add_argument('--ignore-ssl-errors')
14+
#options.add_argument('--ignore-certificate-errors')
1215
# dont need to add following argument in the option otherwise get error of 'handshake failed; returned -1, SSL error code 1, net_error -101'
1316
#options.add_argument('--ignore-certificate-errors')
1417

@@ -24,8 +27,10 @@
2427
driver.get("https://www.google.com")
2528
print(driver.title)
2629

27-
driver2.get("https://www.msn.com")
28-
print("driver2.title")
30+
driver2.get("https://www.sslproxies.org/")
31+
#time.sleep(20)
32+
#driver.refresh()
33+
print(driver2.title)
2934

3035
while True:
3136
pass

Python/Selenium/proxies.txt

Whitespace-only changes.

Python/Selenium/proxy-test.py

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
from selenium import webdriver
2+
from selenium.webdriver.support.ui import WebDriverWait
3+
from selenium.webdriver.common.by import By
4+
from selenium.webdriver.support import expected_conditions as EC
5+
from selenium.common.exceptions import TimeoutException
6+
7+
options = webdriver.ChromeOptions()
8+
options.add_argument("start-maximized")
9+
options.add_experimental_option("excludeSwitches", ["enable-automation"])
10+
options.add_experimental_option('useAutomationExtension', False)
11+
options.add_argument('--ignore-certificate-errors-spki-list')
12+
options.add_argument('--ignore-ssl-errors')
13+
14+
driver = webdriver.Chrome(chrome_options=options, executable_path=r'chromedriver.exe')
15+
driver.get("https://sslproxies.org/")
16+
driver.execute_script("return arguments[0].scrollIntoView(true);", WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//table[@class='table table-striped table-bordered dataTable']//th[contains(., 'IP Address')]"))))
17+
ips = [my_elem.get_attribute("innerHTML") for my_elem in WebDriverWait(driver, 5).until(EC.visibility_of_all_elements_located((By.XPATH, "//table[@class='table table-striped table-bordered dataTable']//tbody//tr[@role='row']/td[position() = 1]")))]
18+
ports = [my_elem.get_attribute("innerHTML") for my_elem in WebDriverWait(driver, 5).until(EC.visibility_of_all_elements_located((By.XPATH, "//table[@class='table table-striped table-bordered dataTable']//tbody//tr[@role='row']/td[position() = 2]")))]
19+
driver.quit()
20+
proxies = []
21+
for i in range(0, len(ips)):
22+
proxies.append(ips[i]+':'+ports[i])
23+
print(proxies)
24+
for i in range(0, len(proxies)):
25+
try:
26+
print("Proxy selected: {}".format(proxies[i]))
27+
options = webdriver.ChromeOptions()
28+
options.add_argument('--proxy-server={}'.format(proxies[i]))
29+
driver = webdriver.Chrome(options=options, executable_path=r'C:\WebDrivers\chromedriver.exe')
30+
driver.get("https://www.whatismyip.com/proxy-check/?iref=home")
31+
if "Proxy Type" in WebDriverWait(driver, 5).until(EC.visibility_of_element_located((By.CSS_SELECTOR, "p.card-text"))):
32+
break
33+
except Exception:
34+
driver.quit()
35+
print("Proxy Invoked")

0 commit comments

Comments
 (0)