好的,我一直在尝试制作一个instagram bot,它会将src链接发送回帖子,但我遇到了麻烦,我不断收到错误“selenium.common.exceptions.NoSuchElementException:Message:找不到元素:/html/body/div[4]/div[2]/div/article/div[2]/div/div/div/div/div/div[1]/img”当我试图获取包含src的元素的xpath时。有人能帮忙吗? 链接:https://www.instagram.com/direct/inbox/
def dm_check(self, driver):
print("dm_check starts here")
try:
self.driver.find_element_by_xpath('/html/body/div[1]/section/div/div[2]/div/div/div[1]/div[2]/div/div/div/div/div[1]/a/div').click()
except:
self.driver.get('https://www.instagram.com/direct/inbox/')
print("Refreshing...")
time.sleep(10)
self.dm_check(self.driver)
print("dm_check stops here")
self.download(self.driver)
def download(self, driver):
print("download starts here")
self.driver.find_element_by_xpath('/html/body/div[1]/section/div/div[2]/div/div/div[2]/div[2]/div/div[1]/div/div/div[2]/div[2]/div/div/div/div/div/div/div[2]/img').click()
post = self.driver.find_element_by_xpath('/html/body/div[4]/div[2]/div/article/div[2]/div/div/div[1]/img').get_attribute("src")
print(str(post))
print("download ends here")
self.dmessage(self.driver)
在一些基本情况下会出现这种例外情况
为此,您需要尝试使用以下代码切换到帧
您可以将“//iframe[@name='Dialogue Window']”替换为您的标识符
只需在搜索元素之前插入。 如果元素确实在框架中,则会找到它
以防万一,下面是退出框架的代码
是的!我觉得你的状态不对。。。可能有一个弹出窗口或类似的东西。如果是这样的话,你必须关闭它。要切换到活动元素,请执行以下操作:
然后你可以找到“关闭”按钮或其他东西。关闭后,您将能够继续在页面上浏览网页,并找到所需的元素;)
相关问题 更多 >
编程相关推荐