Funktioniert Mitmproxy nicht in Python, das in einer JMP-Umgebung installiert ist?Ich habe nachgefragt bei
jmputils.jpip('list')
mitmproxy wurde erfolgreich installiert

Aber es funktioniert nicht im Python-Code.
Danke!
Automatisierung und SkriptingWindowsBetreff: Funktioniert Mitmproxy nicht in Python, das in einer JMP-Umgebung installiert ist?Funktioniert nicht, in welcher Weise? Schlägt der Import von Mitmproxy fehl? Wenn ja, starten Sie JMP neu und prüfen Sie, ob es jetzt für JMP sichtbar ist. Wie wäre es sonst mit einem Beispiel? Was haben Sie versucht und warum funktioniert es nicht wie erwartet?
Betreff: Funktioniert Mitmproxy nicht in Python, das in einer JMP-Umgebung installiert ist?Hinweis an alle: Das Paket mitmproxy ist ein Man-In-the-Middle-HTTPS/TLS-Webproxy zum Abfangen von Webverkehr. Ich gehe davon aus, dass der Anwendungsfall hier ein separat gestarteter mitmproxy und die Verwendung von JMP und der Python-API von mitmproxy zur Steuerung des Proxys von JMP aus ist.
Betreff: Funktioniert Mitmproxy nicht in Python, das in einer JMP-Umgebung installiert ist?Ja, ich möchte diesen Mitmproxy verwenden, um Selenium für die Paketerfassung zu ersetzen.
Vielleicht habe ich den Proxyserver auf meinem Computer nicht eingerichtet. Und Python ist mit GPT-4o geschrieben.
Ich werde zuerst nachsehen.
Danke, Experten!
Betreff: Funktioniert Mitmproxy nicht in Python, das in einer JMP-Umgebung installiert ist?Der folgende PY-Code funktioniert jedoch einwandfrei für andere Benutzer, die Python in einer Nicht-JMP-Umgebung verwenden.
Es ist mir jedoch nie gelungen, Python in einer JMP-Umgebung auszuführen. Auch Versuche, verschiedene Versionen dieser Bibliotheken zu installieren, schlugen fehl.
Fehler
C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\pywinauto\__init__.py:71: UserWarning: Apply externally defined coinit_flags: 2
warnings.warn("Apply externally defined coinit_flags: {0}"
Traceback (most recent call last):
File "<STRING>", line 1, in <MODULE>
File "C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\pywinauto\__init__.py", line 89, in <MODULE>
from . import findwindows
File "C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\pywinauto\findwindows.py", line 42, in <MODULE>
from . import controls
File "C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\pywinauto\controls\__init__.py", line 36, in <MODULE>
from . import uiawrapper # register "uia" back-end (at the end of uiawrapper module)
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\pywinauto\controls\uiawrapper.py", line 47, in <MODULE>
from ..uia_defines import IUIA
File "C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\pywinauto\uia_defines.py", line 181, in <MODULE>
pattern_ids = _build_pattern_ids_dic()
^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\pywinauto\uia_defines.py", line 169, in _build_pattern_ids_dic
if hasattr(IUIA().ui_automation_client, cls_name):
^^^^^^
File "C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\pywinauto\uia_defines.py", line 50, in __call__
cls._instances[cls] = super(_Singleton, cls).__call__(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\pywinauto\uia_defines.py", line 60, in __init__
self.UIA_dll = comtypes.client.GetModule('UIAutomationCore.dll')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\comtypes\client\_generate.py", line 153, in GetModule
return _create_friendly_module(tlib, modulename)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\comtypes\client\_generate.py", line 218, in _create_friendly_module
_invalidate_import_caches()
File "C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\site-packages\comtypes\client\_generate.py", line 189, in _invalidate_import_caches
importlib.invalidate_caches()
File "importlib\__init__.py", line 70, in invalidate_caches
finder.invalidate_caches()
File "<FROZEN importlib._bootstrap_external="">", line 1409, in invalidate_caches
TypeError: MetadataPathFinder.invalidate_caches() missing 1 required positional argument: 'cls'</FROZEN></MODULE></MODULE></MODULE></MODULE></MODULE></MODULE></STRING>PY
from pywinauto.application import Application
from pywinauto import timings
import pandas as pd
import time
import datetime
import os
import psutil
Betreff: Funktioniert Mitmproxy nicht in Python, das in einer JMP-Umgebung installiert ist?Danke, Experten!
Betreff: Funktioniert Mitmproxy nicht in Python, das in einer JMP-Umgebung installiert ist?Auch Versuche, andere Versionen dieser Bibliotheken zu installieren, schlugen fehl.
Wie bereits mehrmals in anderen Python-Diskussionsbeiträgen erwähnt, gibt es bei der Installation einiger Pakete in JMP 18.0 ein Problem. Wenn die Installation aufgrund eines Fehlers „_socket kann nicht gefunden werden“ fehlschlägt, handelt es sich um ein bekanntes Problem. Es wurde in 18.1 behoben, aber Sie müssen JMP 18.0 deinstallieren und 18.1 neu installieren. Das Update/die Reparatur verschiebt die erforderlichen Dateien nicht.
Die Problemumgehung in 18.0 besteht darin, zum JMP-Installationsverzeichnis zu gehen, ein DLLs\-Verzeichnis zu erstellen und alle .pyd-Dateien und einige DLLs in das DLLs-Verzeichnis zu verschieben. Dies sind: libcrypto, libssl, libffi und sqlite3. Sie haben Versionsnummern im Namen. Verschieben Sie diese Dateien ebenfalls in das DLLs-Verzeichnis. Dies sollte den Installationsfehler aufgrund des Fehlers „_socket kann nicht gefunden werden“ beheben. pywinauto sollte nach diesem Fix oder durch Neuinstallation mit 18.1 installiert werden.
Betreff: Funktioniert Mitmproxy nicht in Python, das in einer JMP-Umgebung installiert ist?Ich habe dies auf meinem Computer versucht und alle Pakete erfolgreich installiert. Beim Versuch, es von JMP aus auszuführen, erhalte ich ebenfalls die Fehlermeldung.
TypeError: In MetadataPathFinder.invalidate_caches() fehlt 1 erforderliches Positionsargument: „cls“
Die Suche nach dieser Zeichenfolge weist auf einen Codierungsfehler im Paket hin. Ich sehe das Verhalten, ich kann den Import aus eigenständigem Python durchführen und den Fehler aus JMP. Aber in diesem Fall scheint die Umgebung, da sie aus eingebettetem Python ausgeführt wird, dazu zu führen, dass das Paket einen anderen Codepfad nimmt. Sie könnten dem Projekt einen Fehler/ein Problem melden.GitHub – pywinauto/pywinauto: Windows-GUI-Automatisierung mit Python (basierend auf Texteigenschaften) Allerdings scheint pywinauto ein aufgegebenes Projekt zu sein. Keine Commits seit über 2 Jahren. Ein Blick auf den Issue Tracker scheint auch Probleme mit der Ausführung unter Win 11 zu geben. Einer meiner Kollegen arbeitet an einem Projekt, das die UI-Automatisierung von Windows nutzt, um unsere eigene Testsuite um Funktionen zu erweitern. Allerdings gibt es selbst in C++ erhebliche Probleme beim Aufrufen der UI-Automatisierung aus der Anwendung heraus, die Sie automatisieren. Dies könnte ebenfalls Auswirkungen haben. Es ist unwahrscheinlich, dass der/die Autor(en) von pywinauto die Ausführung aus eingebettetem Python heraus getestet oder versucht haben.
Es tut uns leid, aber es sieht so aus, als ob das Ausführen von pywinauto innerhalb von JMP oder einer eingebetteten Python-Instanz eine Sackgasse ist.
Betreff: Funktioniert Mitmproxy nicht in Python, das in einer JMP-Umgebung installiert ist?Danke, Experten!
Ich bin JMP 18.1 für Win10.
Betreff: Funktioniert Mitmproxy nicht in Python, das in einer JMP-Umgebung installiert ist?Wenn ich Python separat installieren möchte, wie kann ich dafür sorgen, dass die Bibliothek die ursprüngliche Python-Bibliothek der JMP-Umgebung verwendet?
Danke, Experten!
C:\Users\Administrator\AppData\Roaming\JMP\JMP\Python\Python311\Scripts
C:\Users\Administrator\AppData\Local\Programs\Python\Python311\Lib\venv\scripts