Problem ze zbieraniem skryptu, który jest na Pythonie w buildzie (.exe)
Witaj. Zadanie dla kogoś, kto bardzo dużo zbierał projektów python w .EXE i ma w tym dużą doświadczenie. Załączone zrzuty ekranu. Mam źródło, w którym są różne skrypty. A także builder, który je zbiera w jeden builder (.exe). Dodaliśmy do ogólnych skryptów bibliotekę selenium-wire==5.1.0 i podczas budowy builda pojawiają się błędy, ostrzeżenia. Ciekawy fakt! Projekt jest duży, zbierałem z ponad 50 różnymi bibliotekami i takich konfliktów nie było. Zauważam również, że jest zwykły Selenium, który zbierał się bez problemów, a także stealth, to typowy binarny. Oprócz zależności, które są w pliku: requirements.txt, do jego budowy dodałem informacje, które nazywają się hookami, w myapp.spec dopisałem jego ścieżki, gdzie znajduje się biblioteka i tak dalej. I też bez konfliktów to wszystko się zbierało. A ten selenium-wire jest jakiś bardzo szczególny. Programista próbował w tych konfliktach usunąć biblioteki, które kolidowały, ale to głupie, bo są potrzebne! A kiedy po prostu aktualizowali ich wersję, to w konsoli, gdzie zbiera się build, krążyło nas, to usuń, to wstaw to, i tak dalej, jakby jakiś cykl. Krótko mówiąc! Moja myśl jest taka, że taką rzecz jak ten: selenium-wire trzeba nie budować, a jakoś wcisnąć do .exe. Albo jakoś poprawnie go zbudować. Tak, w konsoli jest naciśnij enter, aby zignorować konflikt i wszystko się zbierze, i w zasadzie powinno wszystko działać. Bo! W ogóle nie rozumiem, w edytorze, gdzie uruchamia się projekt, nie ma żadnych konfliktów. A tutaj jakieś konflikty. Niestety, po prostu coś mi napisać w moich 2 plikach, które odpowiadają za budowę, i oddać mi z powrotem raczej mi nie pomoże. Dlatego trzeba, abyście się do mnie podłączyli, jak często robią różni programiści i spojrzeli na ten problem. Bo przesyłać kod z różnymi bibliotekami i swoimi plikami, który ma więcej niż 2 GB, na pewno nie będę. To bzdura! Dajcie pracę tutaj, więcej nie pisać kodu, a pomyśleć i poprawnie zapisać warunki, aby build się zbudował.
Słowa od specjalisty, który zrobił mi nową funkcję i dodał bibliotekę selenium wire.
Zapewnić poprawne działanie aplikacji Python z użyciem selenium-wire==5.1.0, usunąć wszystkie konflikty zależności, które przeszkadzają w kompilacji do .exe, mimo że uruchomienie skryptu działa poprawnie.
Używana biblioteka:
selenium-wire==5.1.0
Również używane:
httpcore==0.17.3
httpx==0.24.1
h2>=4.0
googletrans==3.1.0a0
Na etapie uruchamiania skryptu wszystko działa, ale podczas budowy .exe (przez pyinstaller) pojawiają się błędy zależności z powodu:
konfliktów między httpx a httpcore
konfliktów między wersjami h2 — 3.* a 4.*
googletrans, który w wersji PyPI ma błędną zależność od przestarzałego httpx==0.13.3
selenium-wire==5.1.0 wymaga:
h2 >= 4.0
A httpx==0.13.3 (błędnie zależny dla googletrans) wymaga:
httpcore==0.9.*
httpcore==0.9.* wymaga:
h2==3.*
Konflikt: nie można jednocześnie używać h2==4.* i h2==3.*
Załączniki 9
-
292 1 1 Cześć!
Mam duże doświadczenie w pracy z Pythonem, PyInstallerem i tworzeniu projektów w .exe. W twoim zadaniu dotyczącym konfliktów z bibliotekami selenium-wire, httpx, httpcore i h2 widzę źródło problemu, z którym już wielokrotnie pracowałem.
Będę w stanie szybko i skutecznie usunąć konflikty zależności, znajdę optymalne rozwiązanie dla twojego projektu. Zapewnię poprawne zbudowanie twojej aplikacji w .exe ze wszystkimi niezbędnymi bibliotekami, niezależnie od problemów z wersjami.
Zajmę się wszystkimi niuansami, skonfigurujemy odpowiednie wersje zależności, aby budowa przebiegła bez błędów, a projekt działał stabilnie.
Mam doświadczenie w takich sytuacjach, dlatego chętnie pomogę rozwiązać twoje zadania na najwyższym poziomie.
-
726 9 1 Witam! Po zapoznaniu się z twoim projektem, jestem gotów przystąpić do jego realizacji. Mogę zaproponować optymalne rozwiązania dla osiągnięcia najlepszego wyniku.
-

>> Розробник намагався в цих конфліктах, удалити бібліотеки які конфліктували но це тупо, бо вони потрібні!
При всем уважении, не стоит писать того чего не было. Не "удалить", а обновить библиотеки до требуемых версий. Обновление: удаление старой версии + установка новой. Если по вашему "тупо" - это не означает что не верная последовательность действий
-
Збирати EXE з самого початку погана ідея, з багатьох причин.
Одна з яких саме у проблемах з спец. лібами.
Просто всунути мабуть дуже складно або неможливо, і не факт що після оновлення проекту все знову не зламається.
Висновок який не використовувати білд в екзе зовсім або все таки розібратися з конфліктами при білді.
-
Aktualne zlecenia dla freelancerów w kategorii Parsowanie danych
Szukam programisty do OpenCartDzień dobry 1) należy wdrożyć na stronie dneprkomfort.dp.uazakupiono moduł dla ukraińskich banków, już wdrożono Monto bank oto przykład naszego konkurenta Trzeba zrobić rozłożenie na raty, zakupy na raty (Monto Bank) Pumb, Sens, Monto domyślnie 2 płatności na 2 miesiące Pumb… Programowanie stron internetowych, Parsowanie danych ∙ 4 godziny 51 minut temu ∙ 19 ofert |
Wymagany specjalista ds. promocji w Telegramie.
107 PLN
Zadania: zapraszanie rzeczywistych użytkowników z bazy nazw użytkowników do nowych czatów oraz wysyłanie wiadomości do docelowej bazy. Interesuje nas tylko jakościowy ruch i praca z żywą publicznością — wykonawców korzystających z botów, sztucznego zwiększania lub niskiej… Parsowanie danych, Promocja w sieciach społecznościowych (SMM) ∙ 4 dni 7 godzin temu ∙ 9 ofert |
Konsultacja dotycząca parsowania subskrybentów kont InstagramWitam. Konieczne jest przeprowadzenie wstępnej oceny możliwości realizacji następującego zadania. Posiadam listę kont na Instagramie. Celem jest uzyskanie danych kontaktowych (w pierwszej kolejności adresów e-mail) użytkowników, którzy obserwują te konta. Wcześniej spotkałem… Parsowanie danych ∙ 8 dni 2 godziny temu ∙ 13 ofert |
Potrzebny specjalista do wyszukiwania kontaktów decydentów w UkrainieKonieczne jest zebranie bazy (lub gotowej bazy) kontaktów osób podejmujących decyzje (LPR) w firmach Ukrainy. Wyszukiwanie i zbieranie informacji, Parsowanie danych ∙ 8 dni 6 godzin temu ∙ 21 ofert |
Trzeba zeskrobać dane z LinkedInPotrzebujemy wyciągnąć dane z LinkedIn według naszej listy. Dla każdego wpisu należy znaleźć i zebrać dostępne dane, jeśli takie są na profilu LinkedIn, w tym zdjęcie profilowe w serwisie społecznościowym LinkedIn, adres e-mail, linki do mediów społecznościowych, stronę… Parsowanie danych ∙ 8 dni 12 godzin temu ∙ 28 ofert |