Python+Selenium实现自动填写问卷
作者:FriendshipT
这篇文章主要介绍了如何利用Python Selenium实现自动填写问卷功能,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
前提条件
熟悉Python
熟悉HTML
熟悉Xpath
熟悉Selenium
相关介绍
Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。
Time是python标准库,无需额外下载,主要用于处理时间问题。
Random是python标准库,其可以随机生成数字、单词、密码等等。
Selenium是一个用于Web应用程序测试的工具。其测试直接运行在浏览器中,就像真正的用户在操作一样,支持的浏览器包括IE,Mozilla Firefox,Safari,Google Chrome,Opera等。
实验环境
Python 3.x (面向对象的高级语言)
Selenium 3.141.0 (python第三方库)pip3 install selenium==3.141.0
Time (python标准库)
Random(python标准库)
填写问卷
问卷地址
https://wj.qq.com/s2/9851707/76e6/
获取Xpath
主要思路
- 导入所需的库
- 创建一个浏览器对象
- 设置网站并访问
- 用find_element方法找到目标选项的元素
- 用click方法模拟鼠标点击
- 用send_keys方法输入文本
代码实现
""" Created on 2022/03/15 @author: TFX """ import time import random from selenium import webdriver # 声明浏览器对象,这里是谷歌浏览器 browser = webdriver.Chrome() # 问卷网址 url = 'https://wj.qq.com/s2/9851707/76e6/' browser.get(url) time.sleep(0.5) # 等待0.5s # 填姓名 name = browser.find_element_by_xpath('//*[@id="question_q-1-0f43"]/div[2]/input') time.sleep(0.5) # 等待0.5s name.send_keys('张三') # 输入文本 # 填性别 gender = browser.find_element_by_xpath('//*[@id="question_q-5-8b34"]/div[2]/div[1]/label/p') time.sleep(0.5) # 等待0.5s gender.click() # 填学号 SID = browser.find_element_by_xpath('//*[@id="question_q-2-58d4"]/div[2]/input') time.sleep(0.5) # 等待0.5s SID.send_keys('2000010086') # 输入文本 # 填个性签名 motto = browser.find_element_by_xpath('//*[@id="question_q-11-5004"]/div[2]/textarea') time.sleep(0.5) # 等待0.5s motto.send_keys('学无止境!') # 输入文本 # 提交 submit = browser.find_element_by_class_name("btn-submit") submit.click()
输出结果
到此这篇关于Python+Selenium实现自动填写问卷的文章就介绍到这了,更多相关Python Selenium填写问卷内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!