debug: gradual mouse movement + JS event dispatch + element hit info
This commit is contained in:
parent
ad0a0d07b2
commit
9580a94e25
@ -129,9 +129,31 @@ class Resolver:
|
|||||||
if not strategy:
|
if not strategy:
|
||||||
print(f" '{display_name}' nicht im sichtbaren Chat gefunden.")
|
print(f" '{display_name}' nicht im sichtbaren Chat gefunden.")
|
||||||
return None
|
return None
|
||||||
print(f" '{display_name}' via '{strategy}' bei {bbox} — warte auf Karte...")
|
x = bbox.get('x', 0) + bbox.get('w', bbox.get('width', 32)) / 2 if isinstance(bbox, dict) else 0
|
||||||
|
y = bbox.get('y', 0) + bbox.get('h', bbox.get('height', 32)) / 2 if isinstance(bbox, dict) else 0
|
||||||
|
print(f" '{display_name}' via '{strategy}' → Viewport ({x:.0f}, {y:.0f}) — warte auf Karte...")
|
||||||
|
|
||||||
# Screenshot right after hover for debugging
|
# Approach 1: gradual mouse movement (simulate human)
|
||||||
|
self._page.mouse.move(x - 50, y, steps=5)
|
||||||
|
time.sleep(0.1)
|
||||||
|
self._page.mouse.move(x, y, steps=10)
|
||||||
|
time.sleep(0.3)
|
||||||
|
|
||||||
|
# Approach 2: dispatch pointer/mouse events directly on element at that position
|
||||||
|
hit_info = self._page.evaluate(f"""() => {{
|
||||||
|
const el = document.elementFromPoint({x}, {y});
|
||||||
|
if (!el) return 'no element at position';
|
||||||
|
['pointerover','pointerenter','mouseover','mouseenter','pointermove','mousemove'].forEach(t => {{
|
||||||
|
el.dispatchEvent(new MouseEvent(t, {{
|
||||||
|
bubbles: true, cancelable: true, view: window,
|
||||||
|
clientX: {x}, clientY: {y}
|
||||||
|
}}));
|
||||||
|
}});
|
||||||
|
return el.tagName + '[' + (el.getAttribute('data-tid')||'') + '] ' + el.className.substring(0,60);
|
||||||
|
}}""")
|
||||||
|
print(f" Element bei ({x:.0f},{y:.0f}): {hit_info}")
|
||||||
|
|
||||||
|
# Screenshot after hover attempt
|
||||||
try:
|
try:
|
||||||
from pathlib import Path as _Path
|
from pathlib import Path as _Path
|
||||||
debug_dir = _Path("debug"); debug_dir.mkdir(exist_ok=True)
|
debug_dir = _Path("debug"); debug_dir.mkdir(exist_ok=True)
|
||||||
@ -140,7 +162,7 @@ class Resolver:
|
|||||||
except Exception:
|
except Exception:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
time.sleep(0.5) # Give Teams time to register the hover
|
time.sleep(1.5) # Wait for hover card to fully appear
|
||||||
|
|
||||||
try:
|
try:
|
||||||
# Stage 1: wait for card container to appear
|
# Stage 1: wait for card container to appear
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user