예제 #1
0
def walk_dir(mypath, out_path):
    '''
    Render HTML page in @mypath, and capture whole screenshot to @out_path
    '''
    # Use virtual display to prevent browser been shown.
    display = Display(visible=0, size=(1024, 768))
    display.start()

    # Setup chrome browser driver
    chromedriver = "/usr/local/bin/chromedriver"
    os.environ["webdriver.chrome.driver"] = chromedriver
    driver = webdriver.Chrome(chromedriver)
    driver.set_window_size(1024, 768)
    out_path = os.path.abspath(out_path)

    for (dirpath, dirnames, filenames) in os.walk(mypath):
        for filename in filenames:
            ext = os.path.splitext(filename)[1]
            basefilename = os.path.splitext(filename)[0]
            if ext == '.html':
                url = 'file:///' + os.path.abspath(
                    os.path.join(dirpath, filename))
                log.hclog.info('Rendering %s' % url)
                # Open HTML in browser
                driver.get(url)
                # Capture screenshot to .png file
                out_png = os.path.join(out_path, basefilename + '.png')
                util.fullpage_screenshot(driver, out_png)
        break

    driver.quit()
    display.stop()
예제 #2
0
파일: visu.py 프로젝트: mathubhalan/VisuR
def takeSnap(driver,env,key):
    #remdr = webdriver.Chrome()
    for k,v in folderpath.items():
        URL_snap = env + v
        driver.maximize_window()
        driver.implicitly_wait(500000)
        driver.get(URL_snap.strip())
        print("Snapping {}".format(URL_snap))
        time.sleep(3)
        driver.implicitly_wait(5000)
        util.fullpage_screenshot(driver,k,key)
예제 #3
0
    def test_fullpage_screenshot(self):
        ''' Generate document-height screenshot '''

        i = 1
        with open("sitemap.txt") as urls:
            for line in urls:
                self.driver.get(line)
                self.driver.set_window_size(1440, 2000)
                util.fullpage_screenshot(self.driver, "page" + str(i) + ".png")
                i = i + 1
        urls.close()
예제 #4
0
    def capture_screenshot(self, url, pos):
        # self.driver.get(url)

        driver = self.driver
        driver.maximize_window()
        driver.get(url)

        date_stamp = str(datetime.datetime.now()).split('.')[0]
        date_stamp = date_stamp.replace(" ",
                                        "_").replace(":",
                                                     "_").replace("-", "_")
        # file_name = os.getcwd() + '\\temp2\\' + date_stamp + ".png"
        # self.driver.get_screenshot_as_file(file_name)

        util.fullpage_screenshot(driver, pos)
예제 #5
0
def gen_PNG():
    options = webdriver.ChromeOptions()
    #user local machine path to wireframify chrom extn
    cx = "C:/Users/mathu_gopalan/AppData/Local/Google/Chrome/User Data/Default/Extensions/denkephjglddepmhdlaaigjionglkdbb/1.0.1_0/"
    # Note that `chrome-extension` is the path to the unpackaged extension.
    options.add_argument('--load-extension=' + cx)
    # Navigate to any page... well, not just *any* page...
    driver = webdriver.Chrome(chrome_options=options)
    driver.maximize_window()
    time.sleep(2)
    i = 0
    for url in df["URLs_name"]:
        driver.get(url.strip())
        time.sleep(2)
        util.fullpage_screenshot(driver, SnapFolder, str(i))
        i += 1
예제 #6
0
def save_capture(driver, url, savename, path, ini, add_dir=""):
    print("function:{0} start".format(sys._getframe().f_code.co_name))
    try:
        cappath = path + ini.get("capture", "folder")

        if len(add_dir) != "":
            cappath = cappath + add_dir + "/"

        util.mkdir(cappath)
        # driver.save_screenshot(cappath + savename + "_default.png")
        util.fullpage_screenshot(driver, cappath + savename + "_full.png")
        # window_fullsize_screenshot(driver, url, cappath + savename + "_default_full.png")
    except WebDriverException as w:
        print("WebDriverException {0},{1}".format(sys.exc_info()[0],
                                                  w.strerror))
    except:
        print("Unexpected error:", sys.exc_info()[0])

    print("function:{0} end".format(sys._getframe().f_code.co_name))
예제 #7
0
def IIdp(driver):
    x = WebDriverWait(driver, 10).until(
        EC.presence_of_element_located((By.ID, "mainbody")))
    util.fullpage_screenshot(driver, "test.png")
    time.sleep(2)
    import PIL
    from PIL import Image

    img = Image.open('test.png')

    hsize = 768
    img = img.resize((1366, hsize), PIL.Image.ANTIALIAS)
    img.save('test.png')

    time.sleep(2)

    os.system(
        "/usr/bin/gsettings set org.gnome.desktop.background picture-uri /ImagePath/test.png"
    )
예제 #8
0
def gen_Wireframe():
    options = webdriver.ChromeOptions()
    cx = "C:/Users/mathu_gopalan/AppData/Local/Google/Chrome/User Data/Default/Extensions/denkephjglddepmhdlaaigjionglkdbb/1.0.1_0/"
    # Note that `chrome-extension` is the path to the unpackaged extension.
    options.add_argument('--load-extension=' + cx)
    # Navigate to any page... well, not just *any* page...
    driver = webdriver.Chrome(chrome_options=options)
    driver.maximize_window()
    driver.get("https://www.google.com")
    time.sleep(2)
    v = pyautogui.locateOnScreen("findicon.PNG")
    i = 0
    for url in df["URLs_name"]:
        driver.get(url.strip())
        time.sleep(2)
        #pyautogui to click on the extension
        pyautogui.click(x=v[0], y=v[1], clicks=1, interval=0.0, button="left")
        time.sleep(5)
        util.fullpage_screenshot(driver, SnapFolder, str(i))
        i += 1
예제 #9
0
def takeSnap():
    remdr = webdriver.Chrome()
    remdr.maximize_window()        
    remdr.get(login_form)
    remdr.implicitly_wait(2000)
    time.sleep(2)
    remdr.find_element_by_id(form_login).send_keys(credentials.split("/")[0])
    remdr.find_element_by_id(form_pass).send_keys(credentials.split("/")[1])
    remdr.find_element_by_xpath(form_submit).click()
    remdr.implicitly_wait(200)  
    time.sleep(2)
    for url in df["URLs"]:
        remdr.get(url.strip())
        print("Snapping {}".format(url))
        time.sleep(3)
        parsed_url = urlparse(url)
        key = parsed_url[2].replace('/','_')
        if len(key)>240:
            key = key[0:239]
        remdr.implicitly_wait(5000)
        print("Filename {}".format(key))
        util.fullpage_screenshot(remdr,SnapFolder,key)      
예제 #10
0
 def doFastSnap(self, filename):
     util.fullpage_screenshot(self.driver, filename)
예제 #11
0
 def test_fullpage_screenshot(self):
     ''' Generate document-height screenshot '''
     url = "http://www.w3schools.com/js/default.asp"
     self.driver.get(url)
     util.fullpage_screenshot(self.driver, "test.png")
예제 #12
0
if not os.path.exists('sitemap.xml'):
    try:
        response = urllib2.urlopen(url)
        data = response.read()
        fh = open('sitemap.xml', 'w')
        fh.write(data)
        fh.close()
    except:
        print 'cant download sitemap'
        quit()
tree = etree.parse('sitemap.xml')
for child in tree.getroot():
    print child[0].text
    url = child[0].text  # may bugly please fix it
    if not (url[0:4].lower() == 'http'):
        print 'Error get url from element'
        continue
    filename = url
    filename = filename.replace('https://', '')
    filename = filename.replace('http://', '')
    filename = filename.replace('/', '_')
    filename = filename.replace('?', '_')
    filename = filename.replace('&', '_')
    filename = filename.replace('.', '_')
    filename = filename + '.png'
    driver.get(url)
    time.sleep(2)
    full_filename = os.path.join('screens', filename)
    fullpage_screenshot(driver, full_filename)
    time.sleep(2)
예제 #13
0
from selenium import webdriver
import time
import webbrowser
import util

wd = webdriver.Chrome('./chromedriver.exe')
url = 'http://naver.com'
wd.get(url)
util.fullpage_screenshot(wd, "test.png")
time.sleep(3)
wd.quit()
예제 #14
0
 def test_fullpage_screenshot(self):
     ''' Generate document-height screenshot '''
     url = "https://techcrunch.com/"
     self.driver.get(url)
     util.fullpage_screenshot(self.driver, "test_1.png")
예제 #15
0
# https://comic.naver.com/webtoon/detail.nhn?titleId=771720&no=1
from selenium import webdriver
import time
import util

wd = webdriver.Chrome('./chromedriver')
url = 'https://comic.naver.com/webtoon/detail.nhn?titleId=771720&no=1'
wd.get(url)
util.fullpage_screenshot(wd, 'webtoon.png')
time.sleep(3)
wd.quit()
예제 #16
0
 def test_fullpage_screenshot(self):
     ''' Generate document-height screenshot '''
     url = "https://www.principlesofaccounting.com/?page_id=98"
     self.driver.get(url)
     util.fullpage_screenshot(self.driver, "4.png")
예제 #17
0
                                                      row['cases_inc'],
                                                      'obitosNovos':
                                                      row['deaths_inc'],
                                                      'casosAcumulados':
                                                      row['cases'],
                                                      'obitosAcumulados':
                                                      row['deaths']
                                                  }
                                              },
                                              upsert=True,
                                              full_response=True)
            os.remove(fname)
        break
    except IOError:
        time.sleep(10)
util.fullpage_screenshot(
    browser, "C:\\Users\\User\\jobs\\pandemia\\pdf\\" + bkp + "_br.png")
browser.close()

# url = "http://www.saude.am.gov.br/painel/corona/"
url = "http://public.tableau.com/views/PainelCOVID-19Resumo/PainelCovid-19Resumo?:embed=y&:showVizHome=no&:host_url=https%3A%2F%2Fpublic.tableau.com%2F&:embed_code_version=3&:tabs=no&:toolbar=yes&:animate_transition=yes&:display_static_image=no&:display_spinner=no&:display_overlay=yes&:display_count=yes&:loadOrderID=0"
# url = "https://public.tableau.com/profile/astec.sass#!/vizhome/PainelCOVID-19Resumo/PainelCovid-19Resumo"

chrome_options = webdriver.ChromeOptions()
settings = {
    "recentDestinations": [{
        "id": "Save as PDF",
        "origin": "local",
        "account": "",
    }],
    "selectedDestinationId":
    "Save as PDF",
예제 #18
0
                    self.conn.commit()
                    self.c.execute("SELECT * FROM users WHERE numero = '" +
                                   numero + "' ")
                    for n in self.c.fetchall():
                        print("SQL " + str(n))
                    self.opcao(mensagem, numero)
                return "tets"
            except Exception as erro_critico:
                print("Erro Critico: " + str(erro_critico))
                log.erro_critico(log, erro_critico)


driver = webdriver.Chrome()
driver.get('https://web.whatsapp.com/')
time.sleep(1)
util.fullpage_screenshot(driver, "Print site.png")

database = db()
arquivos.get_capitulo(arquivos, "one punch", 30)
opcoes = opcoes()
while True:
    msg = ultima_msg()
    #print("Mensagem:" + str(msg))
    if msg != "":
        opcoes.opcao(msg[0], msg[1])
        msg == ""
    time.sleep(1)

#val = database.read_titulos("one")
#print(val[0][1])
#valop = ["one punch 110","Gustavo"]
예제 #19
0
 def take(self, url, out_path):
     self.driver.get(url)
     webdriver.ActionChains(self.driver).send_keys(Keys.ESCAPE).perform()
     util.fullpage_screenshot(self.driver, out_path)
예제 #20
0
 def test_fullpage_screenshot(self):
     ''' Generate document-height screenshot '''
     url = "https://www.mmichalski.com/"
     self.driver.get(url)
     util.fullpage_screenshot(self.driver, "test.png")
예제 #21
0
 def test_fullpage_screenshot(self):
     ''' Generate document-height screenshot '''
     url = "https://gist.github.com/leemengtaiwan/e393d881222885f59ef09a14117159c8"
     self.driver.get(url)
     time.sleep(5)
     util.fullpage_screenshot(self.driver, "test.png")