如何在 Instagram 上的 chrome 移动视图中获取 .click(),而不是右键单击-[Instagram 上的 Selenium]

Posted

技术标签:

【中文标题】如何在 Instagram 上的 chrome 移动视图中获取 .click(),而不是右键单击-[Instagram 上的 Selenium]【英文标题】:How to get .click(), when on mobile view in chrome on Instagram, to NOT right click-[Selenium on Instagram] 【发布时间】:2019-06-04 04:32:53 【问题描述】:

我正在尝试通过 selenium-webdriver 编写一个自动发布到 instagram 的机器人。

我关注的流程是:

    打开 Instagram 登录 切换到开发者工具,切换到 移动模式,刷新页面(这里显示发布按钮) 点击发帖“加号”按钮。 使用键盘事件从电脑中选择图片 其他的你都知道。

我在第 4 步被绊倒了。

我在浏览器中找到了 Post 按钮的 xpath。

elem = driver.find_element_by_xpath("//span[@class='glyphsSpriteNew_post__outline__24__grey_9 u-__7']")

但是当我按下 elem.click 之后,我得到了一个右键单击,我的终端停止了。我必须 cntrl-c 才能摆脱它,它会关闭我的浏览器。

我还尝试选择帖子“加号”按钮周围的区域:

elem = driver.find_element_by_xpath("//div[@class='q02Nz _0TPg']")
elem.click()

这做同样的事情。

有人有这方面的经验吗?这是否是 Facebook 故意与botters 搞砸的?

我还没试过火狐。

【问题讨论】:

【参考方案1】:

你可以试试双击吗:

Actions actions = new Actions(driver);
elem = driver.find_element_by_xpath("//span[@class='glyphsSpriteNew_post__outline__24__grey_9 u-__7']");
actions.doubleClick(elem ).perform();

这也可能是一种解决方法:

javascript simulate right click through code

【讨论】:

这是使用动作链吗?双击是个好主意! 只是 Action 类,guru99.com/keyboard-mouse-events-files-webdriver.html 有效吗? 可以点击其他元素吗?

以上是关于如何在 Instagram 上的 chrome 移动视图中获取 .click(),而不是右键单击-[Instagram 上的 Selenium]的主要内容,如果未能解决你的问题,请参考以下文章

如何用 BeautifulSoup 抓取 Instagram

如何使用 Instagram 的“TextLayoutView”改进 Android 上的 TextView 渲染

使用 selenium 和 webdriver (chrome) python OSX 在 Instagram 中填写登录表单

卡片列嵌入 Instagram 帖子:Chrome 和其他浏览器之间的区别

如何在外部浏览器而不是应用内(instagram)中打开链接?

如何从 Instagram 上的多张照片中检索所有图像