[英]Unable to click an element-Selenium python
我想从Instagram下载图片,但无法单击(使用代码) 此页面的下载按钮
我尝试使用XPath和CSS选择器单击,但不起作用。
pyautogui.locateOnScreen('image.PNG')
在大多数情况下不起作用。
elem=driver.find_element_by_xpath
elem('/html/body/div[1]/div[3]/div/div/div[1]/div/div[2]/a').click
driver.find_element_by_css_selector('body > div.page-wrapper > div:nth-child(5) > div > div > div.col-md-3 > div > div.button_div > a').click()
NoSuchElementException异常
如果有更好的方法可以执行此任务,请告诉我。
到这里,您无需单击任何按钮即可下载img。 如果您具有链接,则可以urllib.request.urlretreive下载文件。
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import urllib.request
options = Options()
options.add_argument("--headless") # runs chrome in headless mode
driver = webdriver.Chrome(options=options)
driver.get('https://www.sssinstagram.com/p/B1cSJ8hlxXb/')
# To get the link via image displayed on the page use
src = driver.find_element_by_xpath('/html/body/div[1]/div[3]/div/div/div[1]/div/img').get_attribute('src')
urllib.request.urlretrieve(src, src.split('/')[-1].split('?')[0]) # saves image with name 69346681_776681372728713_6952518582543886663_n.jpg obtained from the image url
# to get the image via the href available on the page use
href = driver.find_element_by_xpath('/html/body/div[1]/div[3]/div/div/div[1]/div/div[2]/a').get_attribute('href')
urllib.request.urlretrieve(href, href.split('/')[-1].split('?')[0])
driver.quit()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.