Python selenium.webdriver 模块,FirefoxProfile() 实例源码

我们从Python开源项目中,提取了以下50个代码示例,用于说明如何使用selenium.webdriver.FirefoxProfile()

项目:biweeklybudget    作者:jantman    | 项目源码 | 文件源码
def chrome(self):
        # https://github.com/SeleniumHQ/selenium/blob/master/py/selenium/webdriver/remote/webdriver.py
        # http://www.guguncube.com/2983/python-testing-selenium-with-google-chrome
        # https://gist.github.com/addyosmani/5336747
        # http://blog.likewise.org/2015/01/setting-up-chromedriver-and-the-selenium-webdriver-python-bindings-on-ubuntu-14-dot-04/
        # https://sites.google.com/a/chromium.org/chromedriver/getting-started
        # http://stackoverflow.com/questions/8255929/running-webdriver-chrome-with-selenium
        chrome = webdriver.Chrome()
        return chrome

#     @property
#     def firefox(self):
#         profile = webdriver.FirefoxProfile()
#         #firefox = webdriver.Firefox(firefox_profile=profile)
#         firefox = WebDriver(firefox_profile=profile)
#         return firefox
项目:Facebook-Photos-Download-Bot    作者:NalinG    | 项目源码 | 文件源码
def main(username, account_password,destination):
    profile = webdriver.FirefoxProfile()
    profile.set_preference('browser.download.folderList', 2) # custom location
    profile.set_preference('browser.download.manager.showWhenStarting', False)
    profile.set_preference('browser.download.dir', destination)
    profile.set_preference('browser.helperApps.neverAsk.saveToDisk', "image/png,image/jpeg")

    if not username == "NONE" and not account_password == "NONE" and not destination == "NONE":
        display = Display(visible=0, size=(800, 600))
            display.start()
        driver = webdriver.Firefox(firefox_profile=profile)
        driver.get("https://www.facebook.com")

        email_id = driver.find_element_by_id("email")
        password = driver.find_element_by_id("pass")
        email_id.send_keys(username)
        password.send_keys(account_password)
        driver.find_element_by_id("loginbutton").click()
        # driver.find_element_by_css_selector("._5afe.sortableItem").click()
        driver.find_element_by_id("navItem_2305272732").click()
        time.sleep(3)
        list_of_images = driver.find_elements_by_css_selector(".uiMediaThumbImg")
        list_of_images[0].click()
        # print list_of_images
        for image in list_of_images:
            time.sleep(3)
            driver.find_element_by_xpath("//div[@class = 'overlayBarButtons rfloat _ohf']/div/div/a").click()
            time.sleep(3)
            option = driver.find_element_by_xpath("//div[@class = 'uiContextualLayerPositioner uiLayer']/div/div/div[@class = '_54ng']/ul[@class = '_54nf']/li[4]/a")
            option_name = option.find_element_by_xpath(".//*")
            option_name = option_name.find_element_by_xpath(".//*")
            if option_name.get_attribute('innerHTML').lower() == "download":
                option_name.click()
            # print option.get_attribute('innerHTML')
            driver.find_element_by_css_selector(".snowliftPager.next.hilightPager").click()

            display.stop()

    else:
        print "\nIncomplete Parameters, Program is Shutting Down."
项目:warriorframework    作者:warriorframework    | 项目源码 | 文件源码
def set_firefoxprofile(proxy_ip, proxy_port):
        """method to update the given preferences in Firefox profile"""
        ff_profile = webdriver.FirefoxProfile()
        if proxy_ip is not None and proxy_port is not None:
            proxy_port = int(proxy_port)
            ff_profile.set_preference("network.proxy.type", 1)
            ff_profile.set_preference("network.proxy.http", proxy_ip)
            ff_profile.set_preference("network.proxy.http_port", proxy_port)
            ff_profile.set_preference("network.proxy.ssl", proxy_ip)
            ff_profile.set_preference("network.proxy.ssl_port", proxy_port)
            ff_profile.set_preference("network.proxy.ftp", proxy_ip)
            ff_profile.set_preference("network.proxy.ftp_port", proxy_port)
            ff_profile.update_preferences()
        else:
            ff_profile = None
        return ff_profile

    # private methods
项目:DLink_Harvester    作者:MikimotoH    | 项目源码 | 文件源码
def getFirefox(tempDir='/tmp', showImage=1):
    """get Firefox Webdriver object
    :param showImage: 2 = don't show, 1=show
    """
    proxy = Proxy(dict(proxyType=ProxyType.AUTODETECT))
    profile = webdriver.FirefoxProfile()
    profile.set_preference("plugin.state.flash", 0)
    profile.set_preference("plugin.state.java", 0)
    profile.set_preference("media.autoplay.enabled", False)
    # 2=dont_show, 1=normal
    profile.set_preference("permissions.default.image", showImage)
    profile.set_preference("webdriver.load.strategy", "unstable")
    # automatic download
    # 2 indicates a custom (see: browser.download.dir) folder.
    profile.set_preference("browser.download.folderList", 2)
    # whether or not to show the Downloads window when a download begins.
    profile.set_preference("browser.download.manager.showWhenStarting", False)
    profile.set_preference("browser.download.dir", tempDir)
    profile.set_preference("browser.helperApps.neverAsk.saveToDisk",
                           "application/octet-stream"+
                           ",application/zip"+
                           ",application/x-rar-compressed"+
                           ",application/x-gzip"+
                           ",application/msword")
    return webdriver.Firefox(firefox_profile=profile, proxy=proxy)
项目:AmazonRobot    作者:WuLC    | 项目源码 | 文件源码
def __init__(self, proxy):
        """init the webdriver by setting the proxy and user-agent

        Args:
            proxy (str): proxy in the form of ip:port
        """
        # set proxy
        ip, port = proxy.split(':')
        profile = webdriver.FirefoxProfile()
        profile.set_preference("network.proxy.type", 1)
        profile.set_preference("network.proxy.http", ip)
        profile.set_preference("network.proxy.http_port", port)
        # set user_agent
        profile.set_preference("general.useragent.override", generate_user_agent())

        profile.update_preferences()
        self.driver = webdriver.Firefox(firefox_profile=profile)

        print 'current proxy: %s'%proxy
项目:nextcloud    作者:syncloud    | 项目源码 | 文件源码
def driver():

    if exists(screenshot_dir):
        shutil.rmtree(screenshot_dir)
    os.mkdir(screenshot_dir)

    firefox_path = '{0}/firefox/firefox'.format(DIR)
    caps = DesiredCapabilities.FIREFOX
    caps["marionette"] = True
    caps['acceptSslCerts'] = True

    binary = FirefoxBinary(firefox_path)

    profile = webdriver.FirefoxProfile()
    profile.add_extension('{0}/JSErrorCollector.xpi'.format(DIR))
    profile.set_preference('app.update.auto', False)
    profile.set_preference('app.update.enabled', False)
    driver = webdriver.Firefox(profile,
                               capabilities=caps, log_path="{0}/firefox.log".format(LOG_DIR),
                               firefox_binary=binary, executable_path=join(DIR, 'geckodriver/geckodriver'))
    # driver.set_page_load_timeout(30)
    # print driver.capabilities['version']
    return driver
项目:kibitzr    作者:kibitzr    | 项目源码 | 文件源码
def firefox(headless=True):
    """
    Context manager returning Selenium webdriver.
    Instance is reused and must be cleaned up on exit.
    """
    from selenium import webdriver
    from selenium.webdriver.firefox.options import Options
    if headless:
        driver_key = 'headless'
        firefox_options = Options()
        firefox_options.add_argument('-headless')
    else:
        driver_key = 'headed'
        firefox_options = None
    # Load profile, if it exists:
    if os.path.isdir(PROFILE_DIR):
        firefox_profile = webdriver.FirefoxProfile(PROFILE_DIR)
    else:
        firefox_profile = None
    if FIREFOX_INSTANCE[driver_key] is None:
        FIREFOX_INSTANCE[driver_key] = webdriver.Firefox(
            firefox_profile=firefox_profile,
            firefox_options=firefox_options,
        )
    yield FIREFOX_INSTANCE[driver_key]
项目:dcaf    作者:dxc-technology    | 项目源码 | 文件源码
def start_selenium_driver(module):

    profile = webdriver.FirefoxProfile()
    profile.set_preference("browser.download.folderList", 2)
    profile.set_preference("browser.download.manager.showWhenStarting", False)
    profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/x-gzip")
    profile.set_preference("browser.helperApps.alwaysAsk.force", False);
    profile.set_preference("browser.download.dir", module.params['download_directory'])

    driver = webdriver.Firefox(profile)
    # Lets make sure that firefox is closed at the exit of the module
    atexit.register(driver.close)

    driver.implicitly_wait(30)
    driver.get(module.params['url'])
    return driver
项目:CAM2RetrieveData    作者:PurdueCAM2Project    | 项目源码 | 文件源码
def __init__(self):
        # disable the js of firefox to speed up. it is not necessary to run
        firefox_profile = webdriver.FirefoxProfile()
        firefox_profile.set_preference("browser.download.folderList", 2)
        firefox_profile.set_preference("javascript.enabled", False)

        # get the webdriver of the opened firefox and open the url
        self.driver = webdriver.Firefox(firefox_profile=firefox_profile)
        self.driver.get("http://en.swisswebcams.ch/verzeichnis/traffic/schweiz/beliebt")

        # open the file to store the list and write the format of the list at the first line
        self.f = open('list_swissWebcam_traffic.txt', 'w')
        self.f.write("country#city#snapshot_url#latitude#longitude" + "\n")

        # wait object to use
        self.wait = ui.WebDriverWait(self.driver, 10)
项目:CAM2RetrieveData    作者:PurdueCAM2Project    | 项目源码 | 文件源码
def __init__(self):
        # store the url of homepage and the country code
        self.home_url = "http://en.swisswebcams.ch"
        self.geo_url = "http://map.topin.travel/?p=swc&id="
        self.country = "CH"

        # open the file to store the list and write the format of the list at the first line
        self.f = open('list_swissWebcam.txt', 'w')
        self.f.write("country#city#snapshot_url#latitude#longitude" + "\n")

        # open the Firefox
        firefox_profile = webdriver.FirefoxProfile()
        firefox_profile.set_preference("browser.download.folderList", 2)
        firefox_profile.set_preference("javascript.enabled", False)

        self.driver = webdriver.Firefox(firefox_profile=firefox_profile)

        # wait object to use
        self.wait = ui.WebDriverWait(self.driver, 10)
项目:CAM2RetrieveData    作者:PurdueCAM2Project    | 项目源码 | 文件源码
def __init__(self):
        # store the url of homepage, traffic page, the country code, and the state code
        self.home_url = "http://infotrafego.pbh.gov.br"
        self.traffic_url = "http://infotrafego.pbh.gov.br/info_trafego_cameras.html"
        self.country = "BR"
        self.state = ""

        # open the file to store the list and write the format of the list at the first line
        self.list_file = open("list_infotrafego_traffic.txt", "w")
        self.list_file.write("city#country#snapshot_url#latitude#longitude" + "\n")

        # get the webdriver of the opened firefox and open the url
        firefox_profile = webdriver.FirefoxProfile()
        firefox_profile.set_preference("browser.download.folderList", 2)
        firefox_profile.set_preference("javascript.enabled", False)

        self.driver = webdriver.Firefox(firefox_profile=firefox_profile)

        # gps module
        self.gps = Geocoding('Google', None)

        reload(sys)  
        sys.setdefaultencoding('utf8')
项目:CAM2RetrieveData    作者:PurdueCAM2Project    | 项目源码 | 文件源码
def __init__(self):
        # store the url of homepage, traffic page, the country code, and the state code
        self.home_url = "http://www.phillytraffic.com"
        self.traffic_url = "http://www.phillytraffic.com/#!traffic-updates/cjn9"
        self.country = "USA"
        self.state = "PA"

        # open the file to store the list and write the format of the list at the first line
        self.file = open('list_Philadelphia_PA.txt', 'w')
        self.file.write("city#country#state#snapshot_url#latitude#longitude" + "\n")

        # open the brwoser
        firefox_profile = webdriver.FirefoxProfile()
        firefox_profile.set_preference("browser.download.folderList", 2)
        firefox_profile.set_preference("javascript.enabled", False)

        self.driver = webdriver.Firefox(firefox_profile=firefox_profile)
        self.wait = ui.WebDriverWait(self.driver, 10)
项目:CAM2RetrieveData    作者:PurdueCAM2Project    | 项目源码 | 文件源码
def __init__(self):
        # store the url of homepage, traffic page, the country code, and the state code
        self.home_url = "http://tmc.baycountyfl.gov"
        self.traffic_url = "http://tmc.baycountyfl.gov/"
        self.country = "USA"
        self.state = "FL"

        # open the file to store the list and write the format of the list at the first line
        self.f = open('list_FL_baycounty.txt', 'w')
        self.f.write("city#country#state#snapshot_url#latitude#longitude" + "\n")

        # open the web-browser
        firefox_profile = webdriver.FirefoxProfile()
        firefox_profile.set_preference("browser.download.folderList", 2)
        firefox_profile.set_preference("javascript.enabled", False)

        self.driver = webdriver.Firefox()
        self.wait = ui.WebDriverWait(self.driver, 10)

        # gps module
        self.gps = Geocoding('Google', None)
项目:CAM2RetrieveData    作者:PurdueCAM2Project    | 项目源码 | 文件源码
def __init__(self):
        # store the url of homepage, traffic page, the country code, and the state code
        self.home_url   = "https://www.theweathernetwork.com"
        self.json_url   = "https://www.theweathernetwork.com/api/maps/trafficcameras/9/43.84598317236631/-80.71453475531251/43.048384299427234/-78.72600936468751"
        self.country    = "CA"
        self.state      = ""

        # open the file to store the list and write the format of the list at the first line
        self.list_file = open('list_Canada_weatherNetwork.txt', 'w')
        self.list_file.write("city#country#snapshot_url#latitude#longitude" + "\n")

        # open the browser
        firefox_profile = webdriver.FirefoxProfile()
        firefox_profile.set_preference("browser.download.folderList", 2)
        firefox_profile.set_preference("javascript.enabled", False)

        self.driver = webdriver.Firefox(firefox_profile=firefox_profile)
项目:CAM2RetrieveData    作者:PurdueCAM2Project    | 项目源码 | 文件源码
def __init__(self):
        # store the url of homepage, traffic page, the country code, and the state code
        self.home_url = "http://www.wsoctv.com"
        self.traffic_url = "http://www.wsoctv.com/traffic/nc-cams"
        self.country = "USA"
        self.state = "NC"

        # open the file to store the list and write the format of the list at the first line
        self.f = open('list_NorthCarolina_wsoctv.txt', 'w')
        self.f.write("city#country#state#snapshot_url#latitude#longitude" + "\n")

        # open the web-browser
        firefox_profile = webdriver.FirefoxProfile()
        firefox_profile.set_preference("browser.download.folderList", 2)
        firefox_profile.set_preference("javascript.enabled", False)

        self.driver = webdriver.Firefox()
        self.wait = ui.WebDriverWait(self.driver, 10)
项目:sogou_weixin    作者:xiaodaguan    | 项目源码 | 文件源码
def getProxyDriver(self):

        PROXY_ADDRESS = random.choice(self.proxies.keys())

        address = PROXY_ADDRESS.replace("http://", "").replace("https://", "")

        host = address.split(':')[0]
        port = int(address.split(':')[1])
        profile = webdriver.FirefoxProfile()
        profile.set_preference("network.proxy.type", 1)
        profile.set_preference("network.proxy.http", host)
        profile.set_preference("network.proxy.http_port", port)
        profile.update_preferences()

        self.driver = webdriver.Firefox(firefox_profile=profile)
        self.logger.info("creating driver: [%s] using proxy [%s]" % (self.driver.name, PROXY_ADDRESS))
        self.driver.maximize_window()
项目:python-behave-automation-framework    作者:pradeepta02    | 项目源码 | 文件源码
def firefox():

        import os

        profile = webdriver.FirefoxProfile()

        profile.set_preference('browser.download.folderList', 2)
        profile.set_preference('browser.download.manager.showWhenStarting', False)
        profile.set_preference('browser.download.dir', os.getcwd())
        profile.set_preference('app.update.auto', False)
        profile.set_preference('app.update.enabled', False)
        profile.set_preference('app.update.silent', False)
        profile.set_preference('browser.helperApps.neverAsk.saveToDisk', 'text/csv/xls/zip/exe/msi')
        profile.set_preference('xpinstall.signatures.required', False)

        return webdriver.Firefox(profile)
项目:wechat-spider    作者:bowenpay    | 项目源码 | 文件源码
def get_browser(self, proxy):
        """ ???????????firefox """
        # ?????
        firefox_profile = webdriver.FirefoxProfile()
        # ????image
        #firefox_profile.set_preference('permissions.default.stylesheet', 2)
        #firefox_profile.set_preference('permissions.default.image', 2)
        #firefox_profile.set_preference('dom.ipc.plugins.enabled.libflashplayer.so', 'false')
        # ??
        if proxy.is_valid():
            myProxy = '%s:%s' % (proxy.host, proxy.port)
            ff_proxy = Proxy({
                'proxyType': ProxyType.MANUAL,
                'httpProxy': myProxy,
                'ftpProxy': myProxy,
                'sslProxy': myProxy,
                'noProxy': ''})

            browser = webdriver.Firefox(firefox_profile=firefox_profile, proxy=ff_proxy)
        else:
            browser = webdriver.Firefox(firefox_profile=firefox_profile)

        return browser
项目:DorkNet    作者:NullArray    | 项目源码 | 文件源码
def proxy(PROXY_HOST,PROXY_PORT):
    fp = webdriver.FirefoxProfile()
    print "[" + t.green("+") + "]Proxy host set to: " + PROXY_HOST
    print "[" + t.green("+") + "]Proxy port set to: " + PROXY_PORT
    print "\n[" + t.green("+") + "]Establishing connection..."
    fp.set_preference("network.proxy.type", 1)
    fp.set_preference("network.proxy.http",PROXY_HOST)
    fp.set_preference("network.proxy.http_port",int(PROXY_PORT))
    fp.set_preference("general.useragent.override","'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36'")
    fp.update_preferences()
    return webdriver.Firefox(firefox_profile=fp)


# Function to generate and process results based on input
项目:integration    作者:mendersoftware    | 项目源码 | 文件源码
def firefox_driver():
    # Doesn't work with geckodriver! :(
    capabilities = webdriver.DesiredCapabilities().FIREFOX
    capabilities['acceptSslCerts'] = True

    profile = webdriver.FirefoxProfile()
    profile.accept_untrusted_certs = True

    return webdriver.Firefox(firefox_profile=profile, capabilities=capabilities)
项目:bilibili-selenium-project    作者:umiharasorano    | 项目源码 | 文件源码
def start_foxdr(thread):
    uaList = [line[:-1] for line in open('Base_Data\\ualist.txt')]
    open('Base_Data\\ualist.txt').close()
    i = random.choice(uaList)
    profile = webdriver.FirefoxProfile('c:\\Users\\'+thread)
    profile.set_preference('permissions.default.image', 2)
    profile.set_preference("general.useragent.override", i)
    path1 = 'C:\\Program Files (x86)\\Mozilla Firefox\\geckodriver.exe'
    path2 = 'C:\\Program Files\\Mozilla Firefox\\geckodriver.exe'
    try:
        dr= webdriver.Firefox(executable_path = path1,firefox_profile = profile )
    except:
        dr= webdriver.Firefox(executable_path = path2,firefox_profile = profile )
    return dr,uaList
项目:DouyuFan    作者:wangmengcn    | 项目源码 | 文件源码
def getGift(roomid):
    fp = webdriver.FirefoxProfile(
        r'/Users/eclipse/Library/Application Support/Firefox/Profiles/tmsbsjpg.default')
    browser = webdriver.Firefox(fp)
    browser.implicitly_wait(15)  # seconds
    browser.get("http://www.douyu.com/" + roomid)
    try:
        indexvideo = browser.find_element_by_class_name('cs-textarea')
        print type(indexvideo)
        indexvideo.send_keys('2333333333333')
        print indexvideo
        time.sleep(5)
        sendbut = browser.find_element_by_class_name('b-btn')
        ActionChains(browser).move_to_element(
            indexvideo).click(sendbut).perform()
        gift = browser.find_element_by_class_name('peck-cdn')
    except Exception, e:
        print str(e)
        browser.quit()

    times = 0
    while True:
        try:
            ActionChains(browser).move_to_element(gift).click(gift).perform()
            time.sleep(1)
            print times
            times += 1
        except Exception, e:
            print 'completed by an error'
            browser.quit()
项目:bank_wrangler    作者:tmerr    | 项目源码 | 文件源码
def __init__(self, download_dir, *mime_types):
        """
        Create a Firefox webdriver that downloads into the path download_dir,
        and initiates downloads automatically for any of the given MIME types.
        """
        self.download_dir = download_dir
        self.profile = webdriver.FirefoxProfile()
        self.profile.set_preference('browser.helperApps.neverAsk.saveToDisk',
                                    ', '.join(mime_types))

        # Enable setting the default download directory to a custom path.
        self.profile.set_preference('browser.download.folderList', 2)

        self.profile.set_preference('browser.download.dir', self.download_dir)
        super().__init__(self.profile)
项目:Kad    作者:liuzhuocpp    | 项目源码 | 文件源码
def getFirefoxBrowser():
    proxy = {'host': "proxy.abuyun.com", 'port': 9020, 'usr': "HWJB1R49VGL78Q3D", 'pwd': "0C29FFF1CB8308C4"}

    # userProfileFilePath = r"C:\Users\LZ\AppData\Roaming\Mozilla\Firefox\Profiles\vbqy66hj.default"
    # kadUserProfileFilePath = r"C:\Users\zml\AppData\Roaming\Mozilla\Firefox\Profiles\lotur5zd.default"
    fp = webdriver.FirefoxProfile(localData.FirefoxUserProfileFilePath)

    fp.add_extension('resource/closeproxy.xpi')

    fp.set_preference('network.proxy.type', 1)
    fp.set_preference('network.proxy.http', proxy['host'])
    fp.set_preference('network.proxy.http_port', int(proxy['port']))
    fp.set_preference('network.proxy.ssl', proxy['host'])
    fp.set_preference('network.proxy.ssl_port', int(proxy['port']))
    fp.set_preference('network.proxy.ftp', proxy['host'])
    fp.set_preference('network.proxy.ftp_port', int(proxy['port']))       
    fp.set_preference('network.proxy.no_proxies_on', 'localhost, 127.0.0.1')



# ???????????
    fp.set_preference('permissions.default.image', 2)

    credentials = '{usr}:{pwd}'.format(**proxy)
    credentials = b64encode(credentials.encode('ascii')).decode('utf-8')
    fp.set_preference('extensions.closeproxyauth.authtoken', credentials)
    browser = webdriver.Firefox(executable_path="resource/geckodriver", firefox_profile=fp)
    # browser = webdriver.Firefox(executable_path="geckodriver")

    browser.set_page_load_timeout(1)
    return browser
项目:cabu    作者:thylong    | 项目源码 | 文件源码
def load_firefox(config):
    """Start Firefox webdriver with the given configuration.

    Args:
        config (dict): The configuration loaded previously in Cabu.

    Returns:
        webdriver (selenium.webdriver): An instance of Firefox webdriver.

    """
    binary = None
    profile = webdriver.FirefoxProfile()

    if os.environ.get('HTTPS_PROXY') or os.environ.get('HTTP_PROXY'):
        proxy_address = os.environ.get('HTTPS_PROXY', os.environ.get('HTTP_PROXY'))
        proxy_port = re.search('\:([0-9]+)$', proxy_address).group(1)

        profile.set_preference('network.proxy.type', 1)
        profile.set_preference(
            'network.proxy.http',
            proxy_address
        )
        profile.set_preference('network.proxy.http_port', proxy_port)
        profile.update_preferences()

    if 'HEADERS' in config and config['HEADERS']:
        profile = Headers(config).set_headers(profile)

    if config['DRIVER_BINARY_PATH']:
        from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
        binary = FirefoxBinary(config['DRIVER_BINARY_PATH'])

    return webdriver.Firefox(firefox_binary=binary, firefox_profile=profile)
项目:cabu    作者:thylong    | 项目源码 | 文件源码
def test_firefox_headers_loading(self):
        self.app.config['DRIVER_NAME'] = 'Firefox'
        profile = webdriver.FirefoxProfile()
        headers = Headers(self.app.config)
        profile = headers.set_headers(profile)
        self.assertEquals(
            profile.__dict__['default_preferences']['general.useragent.override'],
            'Mozilla/6.0 (Macintosh; Intel Mac OS X 10_11_3) AppleWebKit/537.36'
            ' (KHTML, like Gecko) Chrome/48.0.2564.103 Safari/537.36'
        )
项目:chat-bots-manager    作者:toxtli    | 项目源码 | 文件源码
def __init__(self, filename):
        config = ConfigParser.ConfigParser()
        config.read(filename)
        self.LOGIN_USER_VALUE = config.get('credentials', 'login_user_value')
        self.LOGIN_PASS_VALUE = config.get('credentials', 'login_pass_value')
        # self.client = fbchat.Client(self.LOGIN_USER_VALUE, self.LOGIN_PASS_VALUE)
        profile = webdriver.FirefoxProfile()
        profile.set_preference("javascript.enabled", False)
        self.driver = webdriver.Firefox(profile)
        # self.driver = webdriver.PhantomJS()
        # self.driver = webdriver.Chrome('./chromedriver')
        self.driver.set_page_load_timeout(self.TIMEOUT)
项目:onedrop    作者:seraphln    | 项目源码 | 文件源码
def get_proxy_browser():
    """ ?????????????? """
    global proxies
    global meta_info

    if not proxies:
        proxies = get_proxy(if_force=True)

    while 1:
        _, meta_info = generate_proxy(proxies)
        host, port, http_method = meta_info
        try:
            profile = webdriver.FirefoxProfile()
            profile.set_preference('network.proxy.type', 1)   # 0 => direct connect, 1 => use config defautl to 0
            if http_method == 'HTTP':
                profile.set_preference('network.proxy.socks', host)
                profile.set_preference('network.proxy.socks_port', port)
            elif http_method == 'HTTPS':
                profile.set_preference('network.proxy.ssl', host)
                profile.set_preference('network.proxy.ssl_port', port)
            profile.update_preferences()
            browser = webdriver.Firefox(profile)
            browser.get('http://weixin.sogou.com')
            return browser
        except:
            print meta_info, 'was failed, now is going to choose another one'
            proxies.remove(meta_info)
            print 'Still have ', len(proxies), 'proxies'
            if not proxies:
                proxies = get_proxy(if_force=True)
            _, meta_info = generate_proxy(proxies)
项目:crawler_sqlmap    作者:CvvT    | 项目源码 | 文件源码
def setProxy(self, proxy):
        profile = FirefoxProfile()
        profile.accept_untrusted_certs = True
        profile.assume_untrusted_cert_issuer = True
        prefix = "network.proxy."
        profile.set_preference("%stype" % prefix, 1)
        for type in ["http", "ssl", "ftp", "socks"]:
            profile.set_preference("%s%s" % (prefix, type), proxy.getHost())
            profile.set_preference("%s%s_port" % (prefix, type), int(proxy.getPort()))
        return profile
项目:reahl    作者:reahl    | 项目源码 | 文件源码
def new_firefox_driver(self, javascript_enabled=True):
        assert javascript_enabled, 'Cannot disable javascript anymore, see: https://github.com/seleniumhq/selenium/issues/635'
        from selenium.webdriver import FirefoxProfile, DesiredCapabilities

        # FF does not fire events when its window is not in focus.
        # Native events used to fix this.
        # After FF34 FF does not support native events anymore
        # We're on 48.0 now on local machines, but on 31 on travis

        fp = FirefoxProfile()
#        fp.set_preference("focusmanager.testmode", False)
#        fp.set_preference('plugins.testmode', False)
        fp.set_preference('webdriver_enable_native_events', True)
        fp.set_preference('webdriver.enable.native.events', True)
        fp.set_preference('enable.native.events', True)
        fp.native_events_enabled = True

        fp.set_preference('network.http.max-connections-per-server', 1)
        fp.set_preference('network.http.max-persistent-connections-per-server', 0)
        fp.set_preference('network.http.spdy.enabled', False)
        fp.set_preference('network.http.pipelining', True)
        fp.set_preference('network.http.pipelining.maxrequests', 8)
        fp.set_preference('network.http.pipelining.ssl', True)
        fp.set_preference('html5.offmainthread', False)

        dc = DesiredCapabilities.FIREFOX.copy()

        if not javascript_enabled:
            fp.set_preference('javascript.enabled', False)
            dc['javascriptEnabled'] = False

        wd = webdriver.Firefox(firefox_profile=fp, capabilities=dc)
        self.reahl_server.install_handler(wd)
        return wd
项目:pantea    作者:nim4    | 项目源码 | 文件源码
def browse(url, cookie, ua):
    domain = ".".join(url.split("/")[2].split(".")[-2:])
    cookies = cookie_dict(cookie, domain)
    profile = webdriver.FirefoxProfile()
    profile.set_preference("general.useragent.override", ua)
    browser = webdriver.Firefox(profile)
    browser.get(url)
    browser.delete_all_cookies()
    for c in cookies:
        try:
            browser.add_cookie(c)
        except:
            pass
    browser.get(url)
项目:robotframework-weblibrary    作者:Netease-AutoTest    | 项目源码 | 文件源码
def _make_ff(self , remote , desired_capabilites , profile_dir):

        if not profile_dir: profile_dir = FIREFOX_PROFILE_DIR
        profile = webdriver.FirefoxProfile(profile_dir)
        if remote:
            browser = self._create_remote_web_driver(webdriver.DesiredCapabilities.FIREFOX  ,
                        remote , desired_capabilites , profile)
        else:
            browser = webdriver.Firefox(firefox_profile=profile)
        return browser
项目:webnuke    作者:bugbound    | 项目源码 | 文件源码
def getWebDriverProfile(self):
        profile = webdriver.FirefoxProfile()
        #profile.set_preference("browser.cache.disk.enable", False)
        #profile.set_preference("browser.cache.memory.enable", False)
        #profile.set_preference("browser.cache.offline.enable", False)
        #profile.set_preference("network.http.use-cache", False)
        return profile
项目:Mobilenium    作者:rafpyprog    | 项目源码 | 文件源码
def add_proxy_to_profile(self, profile):
        if profile is None:
            self.profile = webdriver.FirefoxProfile()
            self.profile.set_proxy(self.proxy.selenium_proxy())
        else:
            self.profile = profile
            self.profile.set_proxy(self.proxy.selenium_proxy())
项目:CAM2RetrieveData    作者:PurdueCAM2Project    | 项目源码 | 文件源码
def __init__(self):
        # store the url of homepage, traffic page, the country code, and the state code
        self.home_url = "http://www.insecam.org"
        self.traffic_url = "http://www.insecam.org/"

        # open the file to store the list and write the format of the list at the first line
        self.us = open('list_insecam_US.txt', 'w')
        self.us.write("city#country#state#snapshot_url#latitude#longitude" + "\n")

        self.ot = open('list_insecam_Other.txt', 'w')
        self.ot.write("city#country#snapshot_url#latitude#longitude" + "\n")

        # open the web-driver
        firefox_profile = webdriver.FirefoxProfile()
        firefox_profile.set_preference("browser.download.folderList", 2)
        firefox_profile.set_preference("javascript.enabled", False)

        self.driver = webdriver.Firefox(firefox_profile=firefox_profile)

        # list of categories that it will parse and list of image URLs that should not be parsed
        self.categories = ['City', 'Village', 'River' 'Square', 'Construction', 'Bridge', 'Nature', 'Mountain', 'Traffic', 'Street', 'Road', 'Architecture', 'Port', 'Beach']
        self.invalid = ['http://admin:@50.30.102.221:85/videostream.cgi',
                        'http://198.1.4.43:80/mjpg/video.mjpg?COUNTER',
                        'http://97.76.101.212:80/mjpg/video.mjpg?COUNTER',
                        'http://24.222.206.98:1024/img/video.mjpeg?COUNTER',
                        'http://71.43.210.90:80/SnapshotJPEG?Resolution=640x480&Quality=Clarity&1467044876',
                        'http://61.149.161.158:82/mjpg/video.mjpg?COUNTER',
                        "http://213.126.67.202:1024/oneshotimage1",
                        "http://71.90.110.144:8080/img/video.mjpeg?COUNTER",
                        "http://95.63.206.142:80/mjpg/video.mjpg?COUNTER",
                        "http://201.229.94.197:80/mjpg/video.mjpg?COUNTER"
                       ]
项目:BingAutomater    作者:sohail288    | 项目源码 | 文件源码
def test_make_profile(self):
        profile = BingAutomater.make_profile()

        profile_type = type(profile)
        is_it_equal = profile_type == type(webdriver.FirefoxProfile())

        javascript_enabled = profile.default_preferences.get('javascript.enabled', None)
        max_script_run_time = profile.default_preferences.get('dom.max_script_run_time', None) 


        self.assertTrue(is_it_equal)
        self.assertFalse(javascript_enabled)
        self.assertEqual(max_script_run_time, 0)
项目:BingAutomater    作者:sohail288    | 项目源码 | 文件源码
def initialize_driver(url, userInfo, passInfo, prof = None ):
    """ signs into outlook and returns driver
        Optional argument of prof can change UA of driver
    """

    default_prof = webdriver.FirefoxProfile()
    default_prof.set_preference("dom.max_chrome_script_run_time", 0)
    default_prof.set_preference("dom.max_script_run_time", 0)
    default_prof.set_preference('dom.ipc.plugins.enabled.libflashplayer.so',
                                      'false')
    default_prof.set_preference("javascript.enabled", False);

    profile_to_use = prof if prof is not None else default_prof
    profile_to_use.add_extension(extension=adblock_xpi)


    driver = webdriver.Firefox(profile_to_use)

    time.sleep(10)
    driver.get("http://www.outlook.com")

    try:
        user = driver.find_element_by_name("loginfmt")
        pass_ = driver.find_element_by_name("passwd")
        user.send_keys(userInfo)
        pass_.send_keys(passInfo)
        time.sleep(5)
        user.submit()
    except (NoSuchElementException, TimeoutException) as err:
        print("Couldn't initialize browser: %s", err)

    time.sleep(10)
    return driver
项目:BingAutomater    作者:sohail288    | 项目源码 | 文件源码
def setup_mobile_profile():
    """ Sets up a profile to use with driver, returns profile"""
    prof = webdriver.FirefoxProfile()
    ua_string = MOBILE_UA
    prof.set_preference("general.useragent.override", ua_string)
    prof.set_preference("dom.max_chrome_script_run_time", 0)
    prof.set_preference("dom.max_script_run_time", 0)
    prof.set_preference('dom.ipc.plugins.enabled.libflashplayer.so',
                                      'false')
    return prof
项目:BingAutomater    作者:sohail288    | 项目源码 | 文件源码
def make_profile():
    """ Set up a profile and return it """

    profile = webdriver.FirefoxProfile()
    profile.set_preference("dom.max_chrome_script_run_time", 0)
    profile.set_preference("dom.max_script_run_time", 0)
    profile.set_preference('dom.ipc.plugins.enabled.libflashplayer.so',
                                      'false')
    profile.set_preference("javascript.enabled", False)


    #profile_to_use.add_extension(extension=adblock_xpi)
    return profile
项目:webfp-crawler-phantomjs    作者:pankajb64    | 项目源码 | 文件源码
def init_tbb_profile(self, version):
        profile_directory = cm.get_tbb_profile_path(version)
        self.prof_dir_path = clone_dir_with_timestap(profile_directory)
        if self.capture_screen and self.page_url:
            self.add_canvas_permission()
        try:
            tbb_profile = webdriver.FirefoxProfile(self.prof_dir_path)
        except Exception:
            wl_log.error("Error creating the TB profile", exc_info=True)
        else:
            return tbb_profile
项目:webfp-crawler-phantomjs    作者:pankajb64    | 项目源码 | 文件源码
def init_tbb_profile(self, version):
        profile_directory = cm.get_tbb_profile_path(version)
        self.prof_dir_path = clone_dir_with_timestap(profile_directory)
        if self.capture_screen and self.page_url:
            self.add_canvas_permission()
        try:
            tbb_profile = webdriver.FirefoxProfile(self.prof_dir_path)
        except Exception:
            wl_log.error("Error creating the TB profile", exc_info=True)
        else:
            return tbb_profile
项目:phat    作者:danielfranca    | 项目源码 | 文件源码
def get_firefox_driver(path = None, selenium_grid_hub = None, no_proxy=False):

    if selenium_grid_hub:
        desired_capabilities={
            "browserName": "firefox",
            "javascriptEnabled": True,
            "proxy": {
                "proxyType": "direct" if no_proxy else "system"
            }
        }

        profile = webdriver.FirefoxProfile()
        profile.set_preference("network.http.phishy-userpass-length", 255);

        return webdriver.Remote(command_executor=selenium_grid_hub, desired_capabilities=desired_capabilities, browser_profile=profile)
    else:
        binary = None
        if path:
            binary = FirefoxBinary(path) #, log_file=open("/tmp/bat_firefox", 'a'))
        profile = webdriver.FirefoxProfile()
        profile.set_preference("network.http.phishy-userpass-length", 255);
        profile.set_preference("network.proxy.type", 0)
        capabilities = None
        if USE_MARIONETTE:
            # tell webdriver to use Marionette instead of plain Firefox
            capabilities = DesiredCapabilities.FIREFOX
            capabilities["marionette"] = True
        return webdriver.Firefox(firefox_profile=profile, firefox_binary=binary, capabilities=capabilities)
项目:fbot    作者:eracle    | 项目源码 | 文件源码
def login(email, password):
    """
    Performs a Login to the Facebook platform.
    :param email: The used email account.
    :param password: Its password
    :return: Returns the logged Selenium web driver and the user name string.
    """
    logger.info('Init Firefox Browser')
    profile = webdriver.FirefoxProfile()
    profile.set_preference('dom.disable_beforeunload', True)
    driver = webdriver.Firefox(profile)

    driver.get('https://www.facebook.com')

    logger.info('Log in - Searching for the email input')
    get_by_xpath(driver, '//input[@id="email"]').send_keys(email)

    logger.info('Log in - Searching for the password input')
    get_by_xpath(driver, '//input[@id="pass"]').send_keys(password)

    logger.info('Log in - Searching for the submit button')
    get_by_xpath(driver, '//input[@type="submit"]').click()

    logger.info('Log in - get the user name')
    user_name = get_by_xpath(driver, '//a[@class="fbxWelcomeBoxName"]').text

    logger.info('Log in - Saving the username, which is: %s' % user_name)
    return driver, user_name
项目:archivematica-acceptance-tests    作者:artefactual-labs    | 项目源码 | 文件源码
def get_driver(self):
        if self.driver_name == 'PhantomJS':
            # These capabilities were part of a failed attempt to make the
            # PhantomJS driver work.
            cap = webdriver.DesiredCapabilities.PHANTOMJS
            cap["phantomjs.page.settings.resourceTimeout"] = 20000
            cap["phantomjs.page.settings.userAgent"] = \
                ('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5)'
                 ' AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116'
                 ' Safari/537.36')
            return webdriver.PhantomJS(desired_capabilities=cap)
        elif self.driver_name == 'Chrome':
            driver = webdriver.Chrome()
            driver.set_window_size(1700, 900)
        elif self.driver_name == 'Chrome-Hub':
            capabilities = DesiredCapabilities.CHROME.copy()
            capabilities["chrome.switches"] = [
                "--start-maximized",
                '--ignore-certificate-errors',
                '--test-type']
            driver = webdriver.Remote(
                command_executor=os.environ.get('HUB_ADDRESS'),
                desired_capabilities=capabilities)
            driver.set_window_size(1200, 900)
        elif self.driver_name == 'Firefox':
            fp = webdriver.FirefoxProfile()
            fp.set_preference("dom.max_chrome_script_run_time", 0)
            fp.set_preference("dom.max_script_run_time", 0)
            driver = webdriver.Firefox(firefox_profile=fp)
        elif self.driver_name == 'Firefox-Hub':
            driver = webdriver.Remote(
                command_executor=os.environ.get('HUB_ADDRESS'),
                desired_capabilities=DesiredCapabilities.FIREFOX)
        else:
            driver = getattr(webdriver, self.driver_name)()
        driver.set_script_timeout(10)
        self.all_drivers.append(driver)
        return driver
项目:linkedinSpider    作者:pediredla    | 项目源码 | 文件源码
def FirefoxProfileSettings():
    profile = webdriver.FirefoxProfile()
    profile.set_preference('network.proxy.type', 1)
    profile.set_preference('network.proxy.socks', '127.0.0.1')
    profile.set_preference('network.proxy.socks_port', 9050)

    return profile
项目:linkedinSpider    作者:pediredla    | 项目源码 | 文件源码
def FirefoxProfileSettings():
    profile=webdriver.FirefoxProfile()
    profile.set_preference('network.proxy.type', 1)
    profile.set_preference('network.proxy.socks', '127.0.0.1')
    profile.set_preference('network.proxy.socks_port', 9050)

    return profile
项目:poll-analysis    作者:minwooat    | 项目源码 | 文件源码
def init_driver():
    profile = webdriver.FirefoxProfile('/Users/MinWooKim/Library/Application Support/Firefox/Profiles/axkhqz5b.default')
    profile.set_preference('browser.download.folderList', 2)
    profile.set_preference('browser.download.dir', '~/Desktop/polls')
    driver = webdriver.Firefox(profile)
    driver.wait = WebDriverWait(driver, 2)
    return driver
项目:SerpScrap    作者:ecoron    | 项目源码 | 文件源码
def _get_Firefox(self):
        try:
            if self.proxy:
                profile = webdriver.FirefoxProfile()
                profile.set_preference(
                    "network.proxy.type",
                    1
                )  # this means that the proxy is user set
                if self.proxy.proto.lower().startswith('socks'):
                    profile.set_preference(
                        "network.proxy.socks",
                        self.proxy.host
                    )
                    profile.set_preference(
                        "network.proxy.socks_port",
                        self.proxy.port
                    )
                    profile.set_preference(
                        "network.proxy.socks_version",
                        5 if self.proxy.proto[-1] == '5' else 4
                    )
                    profile.update_preferences()
                elif self.proxy.proto == 'http':
                    profile.set_preference(
                        "network.proxy.http",
                        self.proxy.host
                    )
                    profile.set_preference(
                        "network.proxy.http_port",
                        self.proxy.port
                    )
                else:
                    raise ValueError('Invalid protocol given in proxyfile.')
                profile.update_preferences()
                self.webdriver = webdriver.Firefox(firefox_profile=profile)
            else:
                self.webdriver = webdriver.Firefox()
            return True
        except WebDriverException as e:
            # no available webdriver instance.
            logger.error(e)
        return False
项目:betaPika    作者:alchemistake    | 项目源码 | 文件源码
def __init__(self, running, browser, send_mails, format_list):

        super(CollectorProcess, self).__init__()

        self.format_list = format_list
        self.running = running
        self.send_mails = send_mails

        # Setting "Downloads" path up
        self.download_path = os.path.abspath(os.path.join(os.curdir, "RAW-collection"))

        if not os.path.exists(self.download_path):
            os.mkdir(self.download_path)

        # Selecting browser
        self.driver = None
        if browser == "chrome":
            chrome_options = webdriver.ChromeOptions()
            preferences = {"download.default_directory": self.download_path}
            chrome_options.add_experimental_option("prefs", preferences)

            # Loading the page
            self.driver = webdriver.Chrome(chrome_options=chrome_options)
        elif browser == "firefox":
            profile = webdriver.FirefoxProfile()

            profile.set_preference("browser.download.folderList", 2)
            profile.set_preference("browser.download.dir", self.download_path)
            profile.set_preference("browser.download.manager.alertOnEXEOpen", False)
            profile.set_preference("browser.helperApps.neverAsk.saveToDisk",
                                   "application/msword, application/csv, application/ris, text/csv, image/png, " +
                                   "application/pdf, text/html, text/plain, application/zip, application/x-zip, " +
                                   "application/x-zip-compressed, application/download, application/octet-stream")
            profile.set_preference("browser.download.manager.showWhenStarting", False)
            profile.set_preference("browser.download.manager.focusWhenStarting", False)
            profile.set_preference("browser.download.useDownloadDir", True)
            profile.set_preference("browser.helperApps.alwaysAsk.force", False)
            profile.set_preference("browser.download.manager.alertOnEXEOpen", False)
            profile.set_preference("browser.download.manager.closeWhenDone", True)
            profile.set_preference("browser.download.manager.showAlertOnComplete", False)
            profile.set_preference("browser.download.manager.useWindow", False)
            profile.set_preference("services.sync.prefs.sync.browser.download.manager.showWhenStarting", False)
            profile.set_preference("pdfjs.disabled", True)

            self.driver = webdriver.Firefox(firefox_profile=profile)
        else:
            raise ValueError('Browser can only be either "chrome" or "firefox"')

        self.currently_open_battles = set()
        self.leave_que = []

        self.format_index = -1
        self.format_length = len(self.format_list)
项目:myautotest    作者:auuppp    | 项目源码 | 文件源码
def start(self,testhost='',browsertype='',implicity_wait_timeout=IMPLICITY_WAIT_TIMEOUT):
        '''
        To open a browser
        '''
        browser = None
        # lists={
        #      'http://192.168.195.2:8888/wd/hub':'firefox',
        #      #'http://172.16.142.241:7777/wd/hub':'chrome',
        #      }
        # for host,bsr in lists.items():
        #     print host,bsr
        if testhost=='':
            if browsertype.startswith('Chrome'):
                chromedriver = os.path.join(os.environ["AUTODIR"], "webdriver", "chromedriver.exe")
                #Cloud_DebugLog.debug_print("To print the chromedirver path: " + chromedriver)
                chromedriver = os.path.abspath(chromedriver)
                os.environ["webdriver.chrome.driver"] = chromedriver
                chrome_options = Options()
                chrome_options.add_argument("--ignore-certificate-errors")
                chrome_options.add_argument("--disable-popup-blocking")
                options = webdriver.ChromeOptions()
                # set some options
                #driver = webdriver.Remote(desired_capabilities=options.to_capabilities())
                options.add_argument("--always-authorize-plugins")            
                #for opt in options.arguments():
                #    Cloud_DebugLog.info_print("option : " + opt)

                browser_chrome = webdriver.Chrome(chromedriver, chrome_options=options)            
                browser = browser_chrome
            else:
                fp = webdriver.FirefoxProfile()
                fp.set_preference("browser.download.folderList",2)
                fp.set_preference("browser.download.manager.showWhenStarting",False)
                fp.set_preference("browser.download.dir","d:\\test") 
                fp.set_preference("browser.helperApps.neverAsk.saveToDisk","application/binary")
                #fp.set_preference("browser.helperApps.alwaysAsk.force", False);
                browser = webdriver.Firefox(firefox_profile=fp)

            if not browser:
                raise(TestError("No browser opened"))
        else:
            browser = Remote(
                          command_executor=testhost+"/wd/hub",
                          desired_capabilities={'platform':'ANY',
                                                'browserName':browsertype,
                                                'version': '', 
                                                'javascriptEnabled':True
                                            }
                                )
            #driver = Remote(command_executor='http://127.0.0.1:4444/wd/hub',desired_capabilities={'platform': 'ANY','browserName':'chrome',  'version': '', 'javascriptEnabled':True})


        browser.implicitly_wait(implicity_wait_timeout)
        browser.maximize_window()
        browser.get(self.url)

        return browser