Объединение двух массивов модельного класса типа Firebase Android

Я не вижу существенного недостатка в вашем блоке кода как такового. Но вот несколько рекомендаций через это решение & amp; выполнение этого автоматизированного тестового сценария:

  1. Этот код отлично работает в режиме Off Market Hours. В течение Рыночных часов много JavaScript & amp; Ajax Calls находятся в игре, и обработка которых выходит за рамки этого Вопроса.
  2. Вы можете сначала проверить, есть ли загруженный каталог для загрузки, и & amp; если он недоступен, создайте новый.
  3. После того, как вы нажмете на «Login», вы вызываете некоторые wait для HTML DOM для правильной рендеринга.
  4. Этот код для этой функции работает в стиле Windows и отлично работает на платформе Windows. ] Если вы хотите просмотреть процесс загрузки, вам нужно установить некоторые дополнительные настройки в FirefoxProfile, как указано в моем коде ниже.
  5. Всегда следует использовать максимальное окно браузера через browser.maximize_window()
  6. Когда вы начинаете загрузку, вам нужно подождать достаточное количество времени, чтобы полностью загрузить файл.
  7. Если вы используете browser.quit() в конце, вам не нужно использовать browser.close()
  8. Вы можете заменить все time.sleep() на любой из ImplicitlyWait или ExplicitWait или FluentWait.
  9. Вот ваш собственный блок кода с некоторыми простыми настройками в нем:
    #!/usr/bin/python
    print "hello from python 2"
    
    import urllib2
    from selenium import webdriver
    from selenium.webdriver.common.keys import Keys
    import time
    from pyvirtualdisplay import Display
    import requests, zipfile, os    
    
    display = Display(visible=0, size=(800, 600))
    display.start()
    
    newpath = 'C:\\home\\vivvin\\shKLSE'
    if not os.path.exists(newpath):
        os.makedirs(newpath)    
    
    profile = webdriver.FirefoxProfile()
    profile.set_preference("browser.download.dir",newpath);
    profile.set_preference("browser.download.folderList",2);
    profile.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/zip");
    profile.set_preference("browser.download.manager.showWhenStarting",False);
    profile.set_preference("browser.helperApps.neverAsk.openFile","application/zip");
    profile.set_preference("browser.helperApps.alwaysAsk.force", False);
    profile.set_preference("browser.download.manager.useWindow", False);
    profile.set_preference("browser.download.manager.focusWhenStarting", False);
    profile.set_preference("browser.helperApps.neverAsk.openFile", "");
    profile.set_preference("browser.download.manager.alertOnEXEOpen", False);
    profile.set_preference("browser.download.manager.showAlertOnComplete", False);
    profile.set_preference("browser.download.manager.closeWhenDone", True);
    profile.set_preference("pdfjs.disabled", True);
    
    for retry in range(5):
        try:
            browser = webdriver.Firefox(profile)
            print "firefox"
            break
        except:
            time.sleep(3)
    time.sleep(1)
    
    browser.maximize_window()
    browser.get("https://www.shareinvestor.com/my")
    time.sleep(10)
    login_main = browser.find_element_by_xpath("//*[@href='/user/login.html']").click()
    time.sleep(10)
    print browser.current_url
    username = browser.find_element_by_id("sic_login_header_username")
    password = browser.find_element_by_id("sic_login_header_password")
    print "find id done"
    username.send_keys("bkcollection")
    password.send_keys("123456")
    print "log in done"
    login_attempt = browser.find_element_by_xpath("//*[@type='submit']")
    login_attempt.submit()
    browser.get("https://www.shareinvestor.com/prices/price_download.html#/?type=price_download_all_stocks_bursa")
    print browser.current_url
    time.sleep(20)
    dl = browser.find_element_by_xpath("//*[@href='/prices/price_download_zip_file.zip?type=history_all&market=bursa']").click()
    time.sleep(900)
    
    browser.close()
    browser.quit()
    display.stop()
    
    zip_ref = zipfile.ZipFile(/home/vinvin/sh/KLSE, 'r')
    zip_ref.extractall(/home/vinvin/sh/KLSE)
    zip_ref.close()
    os.remove(zip_ref)
    

Дайте мне знать, если это ответит на ваш вопрос.

1
задан DragonFire 23 March 2019 в 07:07
поделиться