1.上传文件:
(1)input类型可通过send_keys()上传文件
示例
from selenium import webdriverimport timeimport osdriver = webdriver.Chrome()driver.get('https://www.pencilnews.cn/')time.sleep(20)upload = driver.find_element_by_id('se_ava_input')base_dir = os.path.dirname(os.path.abspath(__file__))print(base_dir)img_dir = base_dir + "/Picture.jpg"print(img_dir)upload.send_keys(img_dir)print(upload.get_attribute('value')) # check value
(2)非input类型上传文件
示例
2.下载文件:
Chrome浏览器下载文件
from selenium import webdriveroptions = webdriver.ChromeOptions()prefs = {'download.default_directory':'/Users/edz/Documents/', # 默认存放路径'profile.default_content_settings.popups':'0' # 弹窗设置}# 设置下载参数options.add_experimental_option('prefs', prefs)driver = webdriver.Chrome(chrome_options = options)driver.get('https://www.imooc.com/mobile/app')driver.find_element_by_class_name('android').click()
Firefox浏览器下载文件
profile = webdriver.FirefoxProfile()# 设置默认下载路径profile.set_preference('broswer.download.dir','/Users/edz/Documents/')# 使用自定义的下载路径profile.set_preference('broswer.download.folderList', 2)# 禁止弹窗profile.set_preference('broswer.helperApps.neverAsk.saveToDisk','application/zip')self.driver = webdriver.Firefox(firefox_options=profile)
