コード例 #1
0
class TestMouseAction(MarionetteTestCase):

    def setUp(self):
        MarionetteTestCase.setUp(self)
        if self.marionette.session_capabilities['platformName'] == 'DARWIN':
            self.mod_key = Keys.META
        else:
            self.mod_key = Keys.CONTROL
        self.action = Actions(self.marionette)

    def test_click_action(self):
        test_html = self.marionette.absolute_url("test.html")
        self.marionette.navigate(test_html)
        link = self.marionette.find_element(By.ID, "mozLink")
        self.action.click(link).perform()
        self.assertEqual("Clicked", self.marionette.execute_script("return document.getElementById('mozLink').innerHTML;"))

    def test_clicking_element_out_of_view_succeeds(self):
        # The action based click doesn't check for visibility.
        test_html = self.marionette.absolute_url('hidden.html')
        self.marionette.navigate(test_html)
        el = self.marionette.find_element(By.ID, 'child')
        self.action.click(el).perform()

    def test_double_click_action(self):
        test_html = self.marionette.absolute_url("double_click.html")
        self.marionette.navigate(test_html)
        el = self.marionette.find_element(By.ID, 'one-word-div')
        self.action.double_click(el).perform()
        el.send_keys(self.mod_key + 'c')
        rel = self.marionette.find_element("id", "input-field")
        rel.send_keys(self.mod_key + 'v')
        self.assertEqual(rel.get_attribute('value'), 'zyxw')

    def test_context_click_action(self):
        test_html = self.marionette.absolute_url("javascriptPage.html")
        self.marionette.navigate(test_html)
        click_el = self.marionette.find_element(By.ID, 'resultContainer')

        def context_menu_state():
            with self.marionette.using_context('chrome'):
                cm_el = self.marionette.find_element(By.ID, 'contentAreaContextMenu')
                return cm_el.get_attribute('state')

        self.assertEqual('closed', context_menu_state())
        self.action.context_click(click_el).perform()
        self.wait_for_condition(lambda _: context_menu_state() == 'open')

        with self.marionette.using_context('chrome'):
            (self.marionette.find_element(By.ID, 'main-window')
                            .send_keys(Keys.ESCAPE))
        self.wait_for_condition(lambda _: context_menu_state() == 'closed')

    def test_middle_click_action(self):
        test_html = self.marionette.absolute_url("clicks.html")
        self.marionette.navigate(test_html)

        self.marionette.find_element(By.ID, "addbuttonlistener").click()

        el = self.marionette.find_element(By.ID, "showbutton")
        self.action.middle_click(el).perform()

        self.wait_for_condition(
            lambda _: el.get_attribute('innerHTML') == '1')

    def test_chrome_click(self):
        self.marionette.navigate("about:blank")
        data_uri = "data:text/html,<html></html>"
        with self.marionette.using_context('chrome'):
            urlbar = self.marionette.find_element(By.ID, "urlbar")
            urlbar.send_keys(data_uri)
            go_button = self.marionette.find_element(By.ID, "urlbar-go-button")
            self.action.click(go_button).perform()
        self.wait_for_condition(lambda mn: mn.get_url() == data_uri)

    def test_chrome_double_click(self):
        self.marionette.navigate("about:blank")
        test_word = "quux"
        with self.marionette.using_context('chrome'):
            urlbar = self.marionette.find_element(By.ID, "urlbar")
            self.assertEqual(urlbar.get_attribute('value'), '')

            urlbar.send_keys(test_word)
            self.assertEqual(urlbar.get_attribute('value'), test_word)
            (self.action.double_click(urlbar).perform()
                        .key_down(self.mod_key)
                        .key_down('x').perform())
            self.assertEqual(urlbar.get_attribute('value'), '')

    def test_chrome_context_click_action(self):
        self.marionette.set_context('chrome')
        def context_menu_state():
            cm_el = self.marionette.find_element(By.ID, 'tabContextMenu')
            return cm_el.get_attribute('state')

        currtab = self.marionette.execute_script("return gBrowser.selectedTab")
        self.assertEqual('closed', context_menu_state())
        self.action.context_click(currtab).perform()
        self.wait_for_condition(lambda _: context_menu_state() == 'open')

        (self.marionette.find_element(By.ID, 'main-window')
                        .send_keys(Keys.ESCAPE))

        self.wait_for_condition(lambda _: context_menu_state() == 'closed')
コード例 #2
0
ファイル: run_tests.py プロジェクト: palant/searchlinkfix
 def click(self):
     action = Actions(driver)
     action.click(self)
     action.perform()
コード例 #3
0
class TestClickAction(MarionetteTestCase):
    def setUp(self):
        MarionetteTestCase.setUp(self)
        if self.marionette.session_capabilities['platformName'] == 'DARWIN':
            self.mod_key = Keys.META
        else:
            self.mod_key = Keys.CONTROL
        self.action = Actions(self.marionette)

    def test_click_action(self):
        test_html = self.marionette.absolute_url("test.html")
        self.marionette.navigate(test_html)
        link = self.marionette.find_element(By.ID, "mozLink")
        self.action.click(link).perform()
        self.assertEqual(
            "Clicked",
            self.marionette.execute_script(
                "return document.getElementById('mozLink').innerHTML;"))

    def test_clicking_element_out_of_view_succeeds(self):
        # The action based click doesn't check for visibility.
        test_html = self.marionette.absolute_url('hidden.html')
        self.marionette.navigate(test_html)
        el = self.marionette.find_element(By.ID, 'child')
        self.action.click(el).perform()

    def test_double_click_action(self):
        test_html = self.marionette.absolute_url("javascriptPage.html")
        self.marionette.navigate(test_html)
        el = self.marionette.find_element(By.ID, 'displayed')
        # The first click just brings the element into view so text selection
        # works as expected. (A different test page could be used to isolate
        # this element and make sure it's always in view)
        el.click()
        self.action.double_click(el).perform()
        el.send_keys(self.mod_key + 'c')
        rel = self.marionette.find_element("id", "keyReporter")
        rel.send_keys(self.mod_key + 'v')
        self.assertEqual(rel.get_attribute('value'), 'Displayed')

    def test_context_click_action(self):
        test_html = self.marionette.absolute_url("javascriptPage.html")
        self.marionette.navigate(test_html)
        click_el = self.marionette.find_element(By.ID, 'resultContainer')

        def context_menu_state():
            with self.marionette.using_context('chrome'):
                cm_el = self.marionette.find_element(By.ID,
                                                     'contentAreaContextMenu')
                return cm_el.get_attribute('state')

        self.assertEqual('closed', context_menu_state())
        self.action.context_click(click_el).perform()
        self.wait_for_condition(lambda _: context_menu_state() == 'open')

        with self.marionette.using_context('chrome'):
            (self.marionette.find_element(By.ID, 'main-window').send_keys(
                Keys.ESCAPE))
        self.wait_for_condition(lambda _: context_menu_state() == 'closed')

    def test_middle_click_action(self):
        test_html = self.marionette.absolute_url("clicks.html")
        self.marionette.navigate(test_html)

        self.marionette.find_element(By.ID, "addbuttonlistener").click()

        el = self.marionette.find_element(By.ID, "showbutton")
        self.action.middle_click(el).perform()

        self.wait_for_condition(lambda _: el.get_attribute('innerHTML') == '1')
コード例 #4
0
class TestMouseAction(MarionetteTestCase):
    def setUp(self):
        MarionetteTestCase.setUp(self)
        if self.marionette.session_capabilities["platformName"] == "darwin":
            self.mod_key = Keys.META
        else:
            self.mod_key = Keys.CONTROL
        self.action = Actions(self.marionette)

    def test_click_action(self):
        test_html = self.marionette.absolute_url("test.html")
        self.marionette.navigate(test_html)
        link = self.marionette.find_element(By.ID, "mozLink")
        self.action.click(link).perform()
        self.assertEqual(
            "Clicked",
            self.marionette.execute_script(
                "return document.getElementById('mozLink').innerHTML"))

    def test_clicking_element_out_of_view_succeeds(self):
        # The action based click doesn"t check for visibility.
        test_html = self.marionette.absolute_url("hidden.html")
        self.marionette.navigate(test_html)
        el = self.marionette.find_element(By.ID, "child")
        self.action.click(el).perform()

    def test_double_click_action(self):
        self.marionette.navigate(
            inline("""
          <div contenteditable>zyxw</div><input type="text"/>
        """))

        el = self.marionette.find_element(By.CSS_SELECTOR, "div")
        self.action.double_click(el).perform()
        el.send_keys(self.mod_key + "c")
        rel = self.marionette.find_element(By.CSS_SELECTOR, "input")
        rel.send_keys(self.mod_key + "v")
        self.assertEqual("zyxw", rel.get_property("value"))

    def test_context_click_action(self):
        test_html = self.marionette.absolute_url("clicks.html")
        self.marionette.navigate(test_html)
        click_el = self.marionette.find_element(By.ID, "normal")

        def context_menu_state():
            with self.marionette.using_context("chrome"):
                cm_el = self.marionette.find_element(By.ID,
                                                     "contentAreaContextMenu")
                return cm_el.get_property("state")

        self.assertEqual("closed", context_menu_state())
        self.action.context_click(click_el).perform()
        self.wait_for_condition(lambda _: context_menu_state() == "open")

        with self.marionette.using_context("chrome"):
            self.marionette.find_element(By.ID,
                                         "main-window").send_keys(Keys.ESCAPE)
        self.wait_for_condition(lambda _: context_menu_state() == "closed")

    def test_middle_click_action(self):
        test_html = self.marionette.absolute_url("clicks.html")
        self.marionette.navigate(test_html)

        self.marionette.find_element(By.ID, "addbuttonlistener").click()

        el = self.marionette.find_element(By.ID, "showbutton")
        self.action.middle_click(el).perform()

        self.wait_for_condition(lambda _: el.get_property("innerHTML") == "1")

    def test_chrome_click(self):
        self.marionette.navigate("about:blank")
        data_uri = "data:text/html,<html></html>"
        with self.marionette.using_context("chrome"):
            urlbar = self.marionette.find_element(By.ID, "urlbar")
            urlbar.send_keys(data_uri)
            go_button = self.marionette.execute_script(
                "return gURLBar.goButton")
            self.action.click(go_button).perform()
        self.wait_for_condition(lambda mn: mn.get_url() == data_uri)

    def test_chrome_double_click(self):
        self.marionette.navigate("about:blank")
        test_word = "quux"

        with self.marionette.using_context("chrome"):
            urlbar = self.marionette.find_element(By.ID, "urlbar")
            self.assertEqual("", urlbar.get_property("value"))

            urlbar.send_keys(test_word)
            self.assertEqual(urlbar.get_property("value"), test_word)
            (self.action.double_click(urlbar).perform().key_down(
                self.mod_key).key_down("x").perform())
            self.assertEqual(urlbar.get_property("value"), "")

    def test_chrome_context_click_action(self):
        self.marionette.set_context("chrome")

        def context_menu_state():
            cm_el = self.marionette.find_element(By.ID, "tabContextMenu")
            return cm_el.get_property("state")

        currtab = self.marionette.execute_script("return gBrowser.selectedTab")
        self.assertEqual("closed", context_menu_state())
        self.action.context_click(currtab).perform()
        self.wait_for_condition(lambda _: context_menu_state() == "open")

        (self.marionette.find_element(By.ID,
                                      "main-window").send_keys(Keys.ESCAPE))

        self.wait_for_condition(lambda _: context_menu_state() == "closed")
コード例 #5
0
class TestClickAction(MarionetteTestCase):

    def setUp(self):
        MarionetteTestCase.setUp(self)
        if self.marionette.session_capabilities['platformName'] == 'DARWIN':
            self.mod_key = Keys.META
        else:
            self.mod_key = Keys.CONTROL
        self.action = Actions(self.marionette)

    def test_click_action(self):
        test_html = self.marionette.absolute_url("test.html")
        self.marionette.navigate(test_html)
        link = self.marionette.find_element(By.ID, "mozLink")
        self.action.click(link).perform()
        self.assertEqual("Clicked", self.marionette.execute_script("return document.getElementById('mozLink').innerHTML;"))

    def test_clicking_element_out_of_view_succeeds(self):
        # The action based click doesn't check for visibility.
        test_html = self.marionette.absolute_url('hidden.html')
        self.marionette.navigate(test_html)
        el = self.marionette.find_element(By.ID, 'child')
        self.action.click(el).perform()

    def test_double_click_action(self):
        test_html = self.marionette.absolute_url("javascriptPage.html")
        self.marionette.navigate(test_html)
        el = self.marionette.find_element(By.ID, 'displayed')
        # The first click just brings the element into view so text selection
        # works as expected. (A different test page could be used to isolate
        # this element and make sure it's always in view)
        el.click()
        self.action.double_click(el).perform()
        el.send_keys(self.mod_key + 'c')
        rel = self.marionette.find_element("id", "keyReporter")
        rel.send_keys(self.mod_key + 'v')
        self.assertEqual(rel.get_attribute('value'), 'Displayed')

    def test_context_click_action(self):
        test_html = self.marionette.absolute_url("javascriptPage.html")
        self.marionette.navigate(test_html)
        click_el = self.marionette.find_element(By.ID, 'resultContainer')

        def context_menu_state():
            with self.marionette.using_context('chrome'):
                cm_el = self.marionette.find_element(By.ID, 'contentAreaContextMenu')
                return cm_el.get_attribute('state')

        self.assertEqual('closed', context_menu_state())
        self.action.context_click(click_el).perform()
        self.wait_for_condition(lambda _: context_menu_state() == 'open')

        with self.marionette.using_context('chrome'):
            (self.marionette.find_element(By.ID, 'main-window')
                            .send_keys(Keys.ESCAPE))
        self.wait_for_condition(lambda _: context_menu_state() == 'closed')

    def test_middle_click_action(self):
        test_html = self.marionette.absolute_url("clicks.html")
        self.marionette.navigate(test_html)

        self.marionette.find_element(By.ID, "addbuttonlistener").click()

        el = self.marionette.find_element(By.ID, "showbutton")
        self.action.middle_click(el).perform()

        self.wait_for_condition(
            lambda _: el.get_attribute('innerHTML') == '1')
コード例 #6
0
class TestMouseAction(MarionetteTestCase):
    def setUp(self):
        MarionetteTestCase.setUp(self)
        if self.marionette.session_capabilities["platformName"] == "darwin":
            self.mod_key = Keys.META
        else:
            self.mod_key = Keys.CONTROL
        self.action = Actions(self.marionette)

    def test_click_action(self):
        test_html = self.marionette.absolute_url("test.html")
        self.marionette.navigate(test_html)
        link = self.marionette.find_element(By.ID, "mozLink")
        self.action.click(link).perform()
        self.assertEqual("Clicked", self.marionette.execute_script(
            "return document.getElementById('mozLink').innerHTML"))

    def test_clicking_element_out_of_view_succeeds(self):
        # The action based click doesn"t check for visibility.
        test_html = self.marionette.absolute_url("hidden.html")
        self.marionette.navigate(test_html)
        el = self.marionette.find_element(By.ID, "child")
        self.action.click(el).perform()

    def test_double_click_action(self):
        test_html = self.marionette.absolute_url("double_click.html")
        self.marionette.navigate(test_html)
        el = self.marionette.find_element(By.ID, "one-word-div")
        self.action.double_click(el).perform()
        el.send_keys(self.mod_key + "c")
        rel = self.marionette.find_element(By.ID, "input-field")
        rel.send_keys(self.mod_key + "v")
        self.assertEqual("zyxw", rel.get_property("value"))

    def test_context_click_action(self):
        test_html = self.marionette.absolute_url("javascriptPage.html")
        self.marionette.navigate(test_html)
        click_el = self.marionette.find_element(By.ID, "resultContainer")

        def context_menu_state():
            with self.marionette.using_context("chrome"):
                cm_el = self.marionette.find_element(By.ID, "contentAreaContextMenu")
                return cm_el.get_property("state")

        self.assertEqual("closed", context_menu_state())
        self.action.context_click(click_el).perform()
        self.wait_for_condition(lambda _: context_menu_state() == "open")

        with self.marionette.using_context("chrome"):
            self.marionette.find_element(By.ID, "main-window").send_keys(Keys.ESCAPE)
        self.wait_for_condition(lambda _: context_menu_state() == "closed")

    def test_middle_click_action(self):
        test_html = self.marionette.absolute_url("clicks.html")
        self.marionette.navigate(test_html)

        self.marionette.find_element(By.ID, "addbuttonlistener").click()

        el = self.marionette.find_element(By.ID, "showbutton")
        self.action.middle_click(el).perform()

        self.wait_for_condition(lambda _: el.get_property("innerHTML") == "1")

    def test_chrome_click(self):
        self.marionette.navigate("about:blank")
        data_uri = "data:text/html,<html></html>"
        with self.marionette.using_context("chrome"):
            urlbar = self.marionette.find_element(By.ID, "urlbar")
            urlbar.send_keys(data_uri)
            go_button = self.marionette.find_element(By.ID, "urlbar-go-button")
            self.action.click(go_button).perform()
        self.wait_for_condition(lambda mn: mn.get_url() == data_uri)

    def test_chrome_double_click(self):
        self.marionette.navigate("about:blank")
        test_word = "quux"

        with self.marionette.using_context("chrome"):
            urlbar = self.marionette.find_element(By.ID, "urlbar")
            self.assertEqual("", urlbar.get_property("value"))

            urlbar.send_keys(test_word)
            self.assertEqual(urlbar.get_property("value"), test_word)
            (self.action.double_click(urlbar).perform()
                        .key_down(self.mod_key)
                        .key_down("x").perform())
            self.assertEqual(urlbar.get_property("value"), "")

    def test_chrome_context_click_action(self):
        self.marionette.set_context("chrome")
        def context_menu_state():
            cm_el = self.marionette.find_element(By.ID, "tabContextMenu")
            return cm_el.get_property("state")

        currtab = self.marionette.execute_script("return gBrowser.selectedTab")
        self.assertEqual("closed", context_menu_state())
        self.action.context_click(currtab).perform()
        self.wait_for_condition(lambda _: context_menu_state() == "open")

        (self.marionette.find_element(By.ID, "main-window")
                        .send_keys(Keys.ESCAPE))

        self.wait_for_condition(lambda _: context_menu_state() == "closed")
コード例 #7
0
class TestMouseAction(MarionetteTestCase):
    def setUp(self):
        MarionetteTestCase.setUp(self)
        if self.marionette.session_capabilities['platformName'] == 'Darwin':
            self.mod_key = Keys.META
        else:
            self.mod_key = Keys.CONTROL
        self.action = Actions(self.marionette)

    def test_click_action(self):
        test_html = self.marionette.absolute_url("test.html")
        self.marionette.navigate(test_html)
        link = self.marionette.find_element(By.ID, "mozLink")
        self.action.click(link).perform()
        self.assertEqual(
            "Clicked",
            self.marionette.execute_script(
                "return document.getElementById('mozLink').innerHTML;"))

    def test_clicking_element_out_of_view_succeeds(self):
        # The action based click doesn't check for visibility.
        test_html = self.marionette.absolute_url('hidden.html')
        self.marionette.navigate(test_html)
        el = self.marionette.find_element(By.ID, 'child')
        self.action.click(el).perform()

    def test_double_click_action(self):
        test_html = self.marionette.absolute_url("double_click.html")
        self.marionette.navigate(test_html)
        el = self.marionette.find_element(By.ID, 'one-word-div')
        self.action.double_click(el).perform()
        el.send_keys(self.mod_key + 'c')
        rel = self.marionette.find_element(By.ID, "input-field")
        rel.send_keys(self.mod_key + 'v')
        self.assertEqual(rel.get_attribute('value'), 'zyxw')

    def test_context_click_action(self):
        test_html = self.marionette.absolute_url("javascriptPage.html")
        self.marionette.navigate(test_html)
        click_el = self.marionette.find_element(By.ID, 'resultContainer')

        def context_menu_state():
            with self.marionette.using_context('chrome'):
                cm_el = self.marionette.find_element(By.ID,
                                                     'contentAreaContextMenu')
                return cm_el.get_attribute('state')

        self.assertEqual('closed', context_menu_state())
        self.action.context_click(click_el).perform()
        self.wait_for_condition(lambda _: context_menu_state() == 'open')

        with self.marionette.using_context('chrome'):
            (self.marionette.find_element(By.ID, 'main-window').send_keys(
                Keys.ESCAPE))
        self.wait_for_condition(lambda _: context_menu_state() == 'closed')

    def test_middle_click_action(self):
        test_html = self.marionette.absolute_url("clicks.html")
        self.marionette.navigate(test_html)

        self.marionette.find_element(By.ID, "addbuttonlistener").click()

        el = self.marionette.find_element(By.ID, "showbutton")
        self.action.middle_click(el).perform()

        self.wait_for_condition(lambda _: el.get_attribute('innerHTML') == '1')

    def test_chrome_click(self):
        self.marionette.navigate("about:blank")
        data_uri = "data:text/html,<html></html>"
        with self.marionette.using_context('chrome'):
            urlbar = self.marionette.find_element(By.ID, "urlbar")
            urlbar.send_keys(data_uri)
            go_button = self.marionette.find_element(By.ID, "urlbar-go-button")
            self.action.click(go_button).perform()
        self.wait_for_condition(lambda mn: mn.get_url() == data_uri)

    def test_chrome_double_click(self):
        self.marionette.navigate("about:blank")
        test_word = "quux"
        with self.marionette.using_context('chrome'):
            urlbar = self.marionette.find_element(By.ID, "urlbar")
            self.assertEqual(urlbar.get_attribute('value'), '')

            urlbar.send_keys(test_word)
            self.assertEqual(urlbar.get_attribute('value'), test_word)
            (self.action.double_click(urlbar).perform().key_down(
                self.mod_key).key_down('x').perform())
            self.assertEqual(urlbar.get_attribute('value'), '')

    def test_chrome_context_click_action(self):
        self.marionette.set_context('chrome')

        def context_menu_state():
            cm_el = self.marionette.find_element(By.ID, 'tabContextMenu')
            return cm_el.get_attribute('state')

        currtab = self.marionette.execute_script("return gBrowser.selectedTab")
        self.assertEqual('closed', context_menu_state())
        self.action.context_click(currtab).perform()
        self.wait_for_condition(lambda _: context_menu_state() == 'open')

        (self.marionette.find_element(By.ID,
                                      'main-window').send_keys(Keys.ESCAPE))

        self.wait_for_condition(lambda _: context_menu_state() == 'closed')
コード例 #8
0
def cnet(client):
    global dl_dir_abs
    url = 'http://download.cnet.com/'
    elementExists = True
    try:
        client.navigate(url)
    except timeout as texp:
        log.info("ignoring timeout: %s" % str(texp))
        pass
    element = client.find_element(By.ID, 'pop')
    elementList = element.find_elements(By.TAG_NAME, 'a')
    if (len(elementList) == 0):
        log.critical('no links found! cnet() function broken?')
        return Status.CRIT, None

    # remove blacklisted downloads
    # added self-link ("most-popular") to blacklist
    whiteList = [
        i for i in elementList
        if not any(b in i.get_attribute('href') for b in blacklist_dls)
    ]
    log.info("dls: %s" % str([i.get_attribute('href') for i in whiteList]))
    # select at random
    element = choice(whiteList)
    nextUrl = element.get_attribute('href')
    # random delay
    sleep(randint(1, 5))
    # open next page in dl process
    if nextUrl.startswith('/'): nextUrl = url + nextUrl
    try:
        client.navigate(nextUrl)
    except timeout as texp:
        log.info("ignoring timeout: %s" % str(texp))
        pass

    # random delay
    sleep(randint(1, 5))
    # click on donwload button
    element = client.find_element(By.CSS_SELECTOR, 'a.dln-a')
    finalUrl = None
    try:
        finalUrl = element.get_attribute('data-href')
    except errors.MarionetteException:
        log.warn('error on finalUrl.')
        return Status.NODL, None
    if finalUrl is None:
        log.warn('no finalUrl.')
        return Status.NODL, None
    action = Actions(client)
    action.click(element)
    assert (dl_dir_abs is not None)
    file_list = os.listdir(dl_dir_abs)
    log.info("files: %s" % str(file_list))
    action.perform()
    # wait until dl finishes
    fn = wait_for_dl_to_finish(dl_dir_abs, file_list, nextUrl, client)
    # hash downloaded file
    log.info('-----------------------')
    if fn is not None:
        tordl_hash = sha256sum(fn)
        log.info("file %s downloaded successfully from %s, hash: %s" %
                 (fn, finalUrl, sha256sum(fn)))
    else:
        return Status.NODL, None

    # dl same file over normal internet
    r = requests.get(finalUrl)
    soup = BeautifulSoup.BeautifulSoup(r.text)
    result = soup.find("meta", attrs={"http-equiv": "refresh"})
    dl_url = None
    if result:
        wait, text = result["content"].split(";")
        sleep(int(wait))
        dl_url = '='.join(text.split('=')[1:]).strip()
        if dl_url.startswith('/'): dl_url = url + dl_url
    else:
        dl_url = finalUrl
    log.info("file url %s" % dl_url)
    r = requests.get(dl_url)
    fo = open('test.exe', 'wb')
    fo.write(r.content)
    fo.close()
    # hash clearnet-downloaded file
    orig_hash = sha256sum('test.exe')
    if orig_hash == tordl_hash:
        return Status.IDENTICAL, fn
    else:
        return Status.NONIDENT, fn
コード例 #9
0
 def click(self):
     action = Actions(driver)
     action.click(self)
     action.perform()