我正在从 Instagram 创建一个下载器。该程序从给定主题标签中的热门 Instagram 帖子中获取 URL,并将它们输入到下载器中。问题在于首次加载网站时,弹出式 iframe 广告始终显示在下载按钮上。这将引发无法单击按钮的错误,因为将单击 iframe。
这是用于运行 Chrome 驱动程序的 Python Selenium。我试图运行一个过滤器来查找 iframe 并返回到主页:
all_iframes = self.browser.find_elements_by_tag_name("iframe")
if len(all_iframes) > 0:
self.browser.switch_to.default_content()
这不起作用,我也尝试将 XPath 获取到广告上的 X 按钮,但 ID 每次都会更改,因此无法点击或识别我。
#get the website
for link in self.links:
self.browser.get('https://downloadgram.com/')
time.sleep(5)
#this is the x button click iframe I tried, but the XPath changes
all_iframes = self.browser.find_elements_by_tag_name("iframe")
if len(all_iframes) > 0:
xButton = self.browser.find_element_by_xpath('//div[@id="id3019a64023cross3019a64023"]')
xButton.click()
#inputs the URL from array links[] into download box
input = self.browser.find_element_by_xpath('//input[@name="url"]')
input.clear()
input.send_keys(link)
time.sleep(1)
#clicks download button
download = self.browser.find_element_by_xpath("//input[@type='submit']")
download.click()
time.sleep(1)
#clicks confirm button
actuallyDownload = self.browser.find_element_by_xpath("//a[@target='_blank']")
actuallyDownload.click()
time.sleep(1)
我希望代码可以在 url 下载图片,但我得到:
selenium.common.exceptions.WebDriverException: Message: unknown error: Element <input type="submit" value="Download" class="button"> is not clickable at point (451, 446). Other element would receive the click:
网站(关闭adblock查看添加)https://downloadgram.com/
慕田峪9158850
相关分类