Python+Selenium实现自动填写问卷

 更新时间:2022年03月16日 11:01:45   作者: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填写问卷内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

相关文章

  • Python中subprocess模块的用法详解

    Python中subprocess模块的用法详解

    这篇文章主要介绍了Python中subprocess模块的用法详解,subprocess是Python 2.4中新增的一个模块,它允许你生成新的进程,连接到它们的 input/output/error 管道,并获取它们的返回状态码,这个模块的目的在于替换几个旧的模块和方法,需要的朋友可以参考下
    2023-08-08
  • Python操作数据库之数据库编程接口

    Python操作数据库之数据库编程接口

    这篇文章主要介绍了Python操作数据库之数据库编程接口,文章围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-06-06
  • python对文档中元素删除,替换操作

    python对文档中元素删除,替换操作

    这篇文章主要介绍了python对文档中元素删除,替换操作,pthon更换文档中某元素、python改变或者删除txt文档中某一列元素,下文具体代码实现需要的小伙伴可以参考一下
    2022-04-04
  • 浅谈Python3识别判断图片主要颜色并和颜色库进行对比的方法

    浅谈Python3识别判断图片主要颜色并和颜色库进行对比的方法

    这篇文章主要介绍了浅谈Python3识别判断图片主要颜色并和颜色库进行对比的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • 对Python捕获控制台输出流的方法详解

    对Python捕获控制台输出流的方法详解

    今天小编就为大家分享一篇对Python捕获控制台输出流的方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • 通过python改变图片特定区域的颜色详解

    通过python改变图片特定区域的颜色详解

    这篇文章主要介绍了通过python改变图片特定区域的颜色详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • python库pydantic的简易入门教程

    python库pydantic的简易入门教程

    pydantic库是一种常用的用于数据接口schema定义与检查的库,通过pydantic库,我们可以更为规范地定义和使用数据接口,下面这篇文章主要给大家介绍了关于python库pydantic的简易入门教程,需要的朋友可以参考下
    2022-03-03
  • Python获取接口数据的实现示例

    Python获取接口数据的实现示例

    本文主要介绍了Python获取接口数据的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • jupyter lab无法导入graphviz模块方式

    jupyter lab无法导入graphviz模块方式

    今天小编就为大家分享一篇jupyter lab无法导入graphviz模块方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-02-02
  • Python 统计Jira的bug 并发送邮件功能

    Python 统计Jira的bug 并发送邮件功能

    这篇文章主要介绍了Python 统计Jira的bug 并发送邮件,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-01-01

最新评论