Skip to content

xhs comment fails with Playwright click timeout (subtree intercepts pointer events) #2

@haolin29

Description

@haolin29

When trying to post a comment using xhs comment, the command fails with a Playwright click timeout.

It appears that the comment input area is covered by an overlay element (not-active inner-when-not-active), which intercepts pointer events and prevents the automation script from activating the comment editor.

Environment
• OS: macOS (Apple Silicon)
• Python: 3.x
• xhs-cli: latest version from GitHub
• Browser automation: Camoufox (installed automatically)

Steps to Reproduce

Run:

xhs comment 69a52e0c000000002202xxxxx "赞啊"

Expected Behavior

The CLI should:
1. Activate the comment editor
2. Input the comment text
3. Submit the comment successfully

Actual Behavior

The command fails with a Playwright timeout when attempting to click the comment input area.

The error indicates that a placeholder/overlay element intercepts pointer events.

Error Log

[xhs_cli.client] ERROR: Failed to post comment: ElementHandle.click: Timeout 30000ms exceeded.

Call log:

  • attempting click action
    2 × waiting for element to be visible, enabled and stable
    • element is visible, enabled and stable
    • scrolling into view if needed
    • done scrolling
    • 评论 from
      subtree intercepts pointer events

(retries multiple times)

❌ Comment failed

Possible Cause

It looks like the comment input area has a two-stage activation in the current Xiaohongshu UI:
1. Initially a placeholder element (e.g. 评论 / 说点什么...) is visible
2. Clicking this placeholder activates the real comment editor
3. Only after activation does the actual editable input appear (textarea or contenteditable)

Currently the automation script seems to click the placeholder or a container element that is covered by an overlay (not-active inner-when-not-active), which intercepts pointer events.

Suggested Fix

Possible approaches:
1. First click the placeholder/comment container to activate the editor
2. Wait for the real editable input (textarea or [contenteditable="true"])
3. Fill the comment
4. Click submit or press Enter

Alternatively, forcing the click (force=True) or targeting the inner editable element directly may also resolve the issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions