Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import zipfile
- from selenium import webdriver
- PROXY_HOST = 'sk21.nordvpn.com' # rotating proxy
- PROXY_PORT = 80
- PROXY_USER = 'kvintus'
- PROXY_PASS = 'mfbsitSoIaFetb46'
- manifest_json = """
- {
- "version": "1.0.0",
- "manifest_version": 2,
- "name": "Chrome Proxy",
- "permissions": [
- "proxy",
- "tabs",
- "unlimitedStorage",
- "storage",
- "<all_urls>",
- "webRequest",
- "webRequestBlocking"
- ],
- "background": {
- "scripts": ["background.js"]
- },
- "minimum_chrome_version":"22.0.0"
- }
- """
- background_js = """
- var config = {
- mode: "fixed_servers",
- rules: {
- singleProxy: {
- scheme: "http",
- host: "%s",
- port: parseInt(%s)
- },
- bypassList: ["localhost"]
- }
- };
- chrome.proxy.settings.set({value: config, scope: "regular"}, function() {});
- function callbackFn(details) {
- return {
- authCredentials: {
- username: "%s",
- password: "%s"
- }
- };
- }
- chrome.webRequest.onAuthRequired.addListener(
- callbackFn,
- {urls: ["<all_urls>"]},
- ['blocking']
- );
- """ % (PROXY_HOST, PROXY_PORT, PROXY_USER, PROXY_PASS)
- def get_chromedriver(use_proxy=False, user_agent=None):
- path = os.path.dirname(os.path.abspath(__file__))
- chrome_options = webdriver.ChromeOptions()
- if use_proxy:
- pluginfile = 'proxy_auth_plugin.zip'
- with zipfile.ZipFile(pluginfile, 'w') as zp:
- zp.writestr("manifest.json", manifest_json)
- zp.writestr("background.js", background_js)
- chrome_options.add_extension(pluginfile)
- if user_agent:
- chrome_options.add_argument('--user-agent=%s' % user_agent)
- driver = webdriver.Chrome(chrome_options=chrome_options)
- return driver
- def main():
- driver = get_chromedriver(use_proxy=True)
- #driver.get('https://www.google.com/search?q=my+ip+address')
- driver.get('https://ifconfig.co/ip')
- print(driver.page_source)
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement