标题:selenium 怎麼上傳?
只看楼主
Z89
Rank: 2
等 级:论坛游民
威 望:1
帖 子:77
专家分:32
注 册:2022-4-26
结帖率:75%
 问题点数:0 回复次数:2 
selenium 怎麼上傳?
程序代码:

driver.get('https://pan.')
driver.set_window_size(1000, 1000)

driver.get('https://pan.')
driver.implicitly_wait(20)


search_input = driver.find_element_by_xpath('//*[@id="uploadFile"]')  #選擇區間
xpath = driver.find_element("xpath", '//*[@id="uploadFile"]').send_keys('./r.part2.rar')

搜索更多相关主题的帖子: get driver php https com 
2022-12-31 11:27
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
回复 楼主 Z89
百度一下AUTOIT

DO IT YOURSELF !
2023-01-05 09:26
wbk
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2023-1-10
得分:0 
按照你访问的这个网站:
1:需要点击“上传按钮”才会出现接收文件的input标签,标签不可见
2:将上传文件的绝对路径,赋值给这个input的value。(单上传txt文件是不成功,图片上传成功了),
(selenuim用的较少,可以自己优化下代码)

driver = Chrome(executable_path='chromedriver.exe')

# 访问网址
driver.get('https://pan.')
# 等待时间
time.sleep(5)

# js内容为:为id为upload_block添加input标签,并监测value改变执行:UploadFile(上传文件方法)
js = '''
$("#upload_block").html('<input type="file" id="file" name="myfile" onchange="UploadFile()" style="display:none"/>');
'''
# 执行js
driver.execute_script(js)

time.sleep(5)
# 获取id为file的input标签,并赋值文件
driver.find_element("xpath", '//*[@id="file"]').send_keys(
    '文件绝对路径')

time.sleep(5)#等待时间需要根据文件大小调整。
print('上传结束')
driver.quit()

[此贴子已经被作者于2023-1-10 18:20编辑过]

2023-01-10 18:18



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-511029-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013478 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved