我正在使用python3,并希望使用python程序包selenium在Instagram中发送消息。该代码以前很棒。今天,大多数时候send_keys()都不起作用。我增加了sleep()时间以确保这不是互联网速度问题。仍然,它不起作用。任何想法?或在框中发送文本的任何其他方法(我正在使用python)?
这是代码:
webdriver.get('https://www.instagram.com/explore/tags/'+ hashtag_list[tag] + '/')
sleep(5)
check='//*[@id="react-root"]/section/main/article/div[2]/div/div[%d]/div[%d]/a/div' %(i,x)
sleep(10)
#'//*[@id=\"react-root\"]/section/main/article/div[1]/div/div/div[1]/div[%s]/a/div' % (x)
first_thumbnail = webdriver.find_element_by_xpath(check)
first_thumbnail.click()
sleep(10)
webdriver.find_element_by_xpath('/html/body/div[3]/div[2]/div/article/div[2]/section[1]/span[2]/button/span').click()
sleep(10)
comment_box = webdriver.find_element_by_xpath('/html/body/div[3]/div[2]/div/article/div[2]/section[3]/div/form/textarea')
sleep(20)
comment_box.send_keys("Hi") # this line does not work
sleep(10)
webdriver.find_element_by_xpath('/html/body/div[3]/div[2]/div/article/div[2]/section[3]/div/form/button').click()
sleep(10)
except:
print("Oops!")
sleep(10)
continue
您是否已通过打印以确保comment_box实际上是有效的Web元素?只是为了确保选择器正确?因为它通常可以正常工作,但也许Instagram正在以某种方式对其进行阻止。