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开根号的几种方式详解

    Python开根号的几种方式详解

    使用Python中的自带库math、自带函数pow和自带库cmath来对数字进行开根号运算,这篇文章主要介绍了Python开根号的几种方式,需要的朋友可以参考下
    2023-01-01
  • 详解Django之admin组件的使用和源码剖析

    详解Django之admin组件的使用和源码剖析

    本篇文章主要介绍了详解Django之admin的使用和源码剖析,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • Python线程障碍对象Barrier原理详解

    Python线程障碍对象Barrier原理详解

    这篇文章主要介绍了Python线程障碍对象Barrier原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • 十个Python程序员易犯的错误

    十个Python程序员易犯的错误

    不管是在学习还是工作过程中,人都会犯错。虽然Python的语法简单、灵活,但也一样存在一些不小的坑,一不小心,初学者和资深Python程序员都有可能会栽跟头。本文为大家分享了10大常见错误,需要的朋友可以参考下
    2015-12-12
  • python matplotlib如何给图中的点加标签

    python matplotlib如何给图中的点加标签

    这篇文章主要介绍了python matplotlib给图中的点加标签,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • python 读取文件并替换字段的实例

    python 读取文件并替换字段的实例

    今天小编就为大家分享一篇python 读取文件并替换字段的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • python配置grpc环境

    python配置grpc环境

    gRPC 是一款高性能、开源的 RPC 框架,产自 Google,基于 ProtoBuf 序列化协议进行开发,支持多种语言(Golang、Python、Java等),本篇只介绍 Python 的 gRPC 安装使用
    2019-01-01
  • Django实现上传图片功能

    Django实现上传图片功能

    这篇文章为大家详细主要介绍了Django实现上传图片,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Linux下编译安装MySQL-Python教程

    Linux下编译安装MySQL-Python教程

    这篇文章主要介绍了Linux下编译安装MySQL-Python教程,本文使用编译方式安装,提供下载地址和测试安装成功方法,需要的朋友可以参考下
    2015-02-02
  • Python + selenium 自动化测试框架详解

    Python + selenium 自动化测试框架详解

    这篇文章主要为大家介绍了Python + selenium 自动化测试框架,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12

最新评论