Utworzenie pliku exe z dołączoną przeglądarką selenium

Odpowiedz Nowy wątek
2018-12-06 11:52
0

Hej, ma ktoś może gotowe rozwiązanie odnośnie utworzenia pliku exe z dołączoną przeglądarką selenium i byłby w stanie zaprezentować dla przykładu?
Plik exe staram się utworzyć za pomocą pyinstaller, ale jak ktoś ma lepszy pomysł, to chętnie wysłucham.

Kombinowałem z plikiem spec, ale zawsze mam tylko 2 wyniki:
Przykład spec pliku:

a = Analysis(['tk.py'],
binaries=[],
datas=[("chromedriver.exe",".")])

Jednym z wyników jest:
File "c:\python36_32\lib\site-packages\PyInstaller\building\buildne 782, in build with open(spec, 'r') as f: FileNotFoundError: [Errno 2] No such file or directory: 'tkk.spec'

W przypadku prawidłowego skompilowania pliku exe, uruchamiając go, wyświetlają się chyba jakieś błędy - w konsoli, ale nie wiem, jak zatrzymać proces, żeby to odczytać.
https://gyazo.com/0152ca0998e2e0895ff91c9cfb7db0c2

Wszystkie pliki są w jednym folderze.
Próbowałem również utworzyć plik exe wykorzystując GUI, ale efekt ten sam.

Pozostało 580 znaków

2018-12-06 13:21
1

Skoro nagrałeś wideo, wystarczy zatrzymać i sobie przeczytać/zrobić screena :).

Oto on, proszę:
title


Linux Mint
Arduino / Python 3.5.2

Pozostało 580 znaków

2018-12-06 23:07
0

Aff, faktycznie czasem jestem dzbanem i mi się mózg wyłącza.

Natomiast nie do końca rozumiem skąd są te błędy- co jest równoznaczne, że nie wiem jak to naprawić.

  • np service.py - Service to nie jest przypadkiem moduł dla unixa?

Co mam rozumieć, przez ostatni komunikat, że nie może znaleźć w Path chrome?
W samym skrypcie jest wpisane na stało.

Każdemu się zdarza :). I by nie było, nie piszę złośliwie, bo tak w sumie jak siebie czytam można by odnieść takie wrażenie, w sumie, w tym linku z błędu znajdziesz odpowiedź: https://sites.google.com/a/chromium.org/chromedriver/home . Jak nie znajdziesz w linku (np. angielski jest problemem), ostatni error wrzuć w google ;) - Guaz 2018-12-07 09:46

Pozostało 580 znaków

2018-12-08 08:18
0

Dla przyszłych pokoleń:

import sys, os, time
from selenium import webdriver

if __name__ == "__main__":

  if getattr(sys, 'frozen', False): 
    # executed as a bundled exe, the driver is in the extracted folder
    chromedriver_path = os.path.join(sys._MEIPASS, "chromedriver.exe")
    driver = webdriver.Chrome(chromedriver_path)
  else:
    # executed as a simple script, the driver should be in `PATH`
    driver = webdriver.Chrome()

  driver.get("https://google.com")
  time.sleep(5)

  driver.quit()

Później: pyinstaller -F --add-binary "sciezka do chromedriver";"." script.py

A tutaj przykład wygenerowanego .spec pliku:

# -*- mode: python -*-

block_cipher = None

a = Analysis(['new.py'],
             pathex=['C:\\Python36_32\\sel'],
             binaries=[('C:\\Python36_32\\sel\\chromedriver.exe', '.')],
             datas=[],
             hiddenimports=[],
             hookspath=[],
             runtime_hooks=[],
             excludes=[],
             win_no_prefer_redirects=False,
             win_private_assemblies=False,
             cipher=block_cipher,
             noarchive=False)
pyz = PYZ(a.pure, a.zipped_data,
             cipher=block_cipher)
exe = EXE(pyz,
          a.scripts,
          a.binaries,
          a.zipfiles,
          a.datas,
          [],
          name='new',
          debug=False,
          bootloader_ignore_signals=False,
          strip=False,
          upx=True,
          runtime_tmpdir=None,
          console=True )

Nie wiem, czemu ale zawsze mam problem z tego typu rzeczami, a nie kodowaniem.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0