首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Instagram中向某人发送垃圾邮件:如何在文本框中输入多条消息?

在Instagram中向某人发送垃圾邮件:如何在文本框中输入多条消息?
EN

Stack Overflow用户
提问于 2020-05-14 11:53:23
回答 2查看 2.4K关注 0票数 1

我想通过他们的网站在Instagram上发送多条消息。到目前为止,我可以登录并打开特定人的dm。我想选择文本框并发送一些输入。我正在尝试这段代码

代码语言:javascript
复制
messageBox = driver.find_element_by_xpath("//*[@class='                   Igw0E     IwRSH      eGOV_        
vwCYk                                        ItkAi                                                                       
']")
messageBox.click()
messageBox.send_keys("test")
send = driver.find_element_by_xpath("//button[@class='sqdOP yWX7d    y3zKF     ']")
send.click()

它引发了一个错误,即元素(messageBox)目前不可交互。

我也尝试过使用javascript输入。

代码语言:javascript
复制
messageBox = driver.find_element_by_xpath("//*[@class='                   Igw0E     IwRSH      eGOV_        
vwCYk                                        ItkAi                                                                       
']")
driver.execute_script("arguments[0].value = 'test';", messageBox)

但是,这不会输入任何内容,也不会引发错误。我该怎么办?

EN

回答 2

Stack Overflow用户

发布于 2020-05-14 22:32:05

我认为输入要么是隐藏的,要么是容量设置为0

如果容量设置为0,请尝试此操作

代码语言:javascript
复制
JavascriptExecutor js = (JavascriptExecutor) getDriver(); 
js.executeScript("document.querySelector(\"yourSelector\").style.opacity='1'");

然后尝试对该值执行sendKeys

如果是隐藏输入,请使用以下代码

代码语言:javascript
复制
document.querySelector(\"yourSelector\").style.display ='active'

然后尝试对该值执行sendKeys

票数 1
EN

Stack Overflow用户

发布于 2020-05-15 19:25:48

我尝试了很多方法,但最终还是成功了。

代码语言:javascript
复制
messageBox = driver.find_element_by_tag_name("textarea")
messageBox.click()
messageBox.send_keys("test")

如果有人想知道,这里是完整的代码

代码语言:javascript
复制
import time
from selenium import webdriver

driver = webdriver.Chrome()
driver.get("https://www.instagram.com/")

username = ""        #your username 
password = ""        #password

time.sleep(2)

#login
usernamefield = driver.find_element_by_name("username")
usernamefield.click()
usernamefield.send_keys(username)

passwordfield = driver.find_element_by_name("password")
passwordfield.click()
passwordfield.send_keys(password)

login = driver.find_element_by_xpath("//*[@class='                   Igw0E     IwRSH      eGOV_         _4EzTm                                                                                                              ']")
login.click()

time.sleep(5)

popup = driver.find_element_by_xpath("//*[@class='aOOlW   HoLwm ']")
popup.click()

driver.get("https://www.instagram.com/direct/inbox/")

time.sleep(2)

#select the first person on your dm list
contact = driver.find_element_by_xpath("//*[@class='-qQT3 rOtsg']")
contact.click()

time.sleep(2)

#send messages in succession
message = ""                       #your message
for i in range(500):
    messageBox = driver.find_element_by_tag_name("textarea")
    messageBox.click()
    messageBox.send_keys(message)       

    send = driver.find_element_by_xpath("//*[@class='                   Igw0E     IwRSH      eGOV_         _4EzTm                                        JI_ht                                                                      ']")
    send.click()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61789030

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档