Python学员信息录入,读取EXCEL数据提交表单。

Python学员信息录入,读取EXCEL数据提交表单。
html代码如下


<!doctype html>
<html lang="zh-CN">
<head>
    <!-- 必须的 meta 标签 -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">

    <meta charset="UTF-8">
    <title>蚂蚁学Python-首页</title>
    <link href="/static/bootstrap/css/bootstrap.min.css" rel="stylesheet">
    <script src="/static/bootstrap/js/bootstrap.bundle.js"></script>

    <script>
        var _hmt = _hmt || [];
        (function () {
            var hm = document.createElement("script");
            hm.src = "https://hm.baidu.com/hm.js?5c97844ffcb5b1dd0f6be0f78cb2b402";
            var s = document.getElementsByTagName("script")[0];
            s.parentNode.insertBefore(hm, s);
        })();
    </script>

</head>
<body>

<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
    <div class="container">
        <a class="navbar-brand" href="/">蚂蚁学Python</a>
        <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNavDarkDropdown"
                aria-controls="navbarNavDarkDropdown" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        
        <a class="nav-link" href="/login">登录</a>
        

    </div>

</nav>
<div class="container">
    <div style="height: 10px"></div>

<div class="alert alert-primary" role="alert">
  利用Python自动提交表单数据,<a href="/webspider/students_form?for_downlad_excel=1">点击下载Excel文件</a>
</div>

<div class="row">
    <div class="col-8">
        <h1 style="margin-top: 20px; margin-bottom: 50px;"> Python学员信息录入 </h1>

        

        

        <div class="card" style="margin-top: 20px; margin-bottom: 20px;">

            <div class="card-body">
                <h4 class="card-title">学员信息录入</h4>
                <form method="post" action="/webspider/students_form">

                    <table>
                        <tr>
                            <td><label for="name">姓名:</label></td>
                            <td colspan="2" style="padding-top: 20px; padding-bottom: 20px; padding-left: 20px;">
                                <input type="text" class="form-control" id="name" name="name" required="required" value=""></td>
                        </tr>
                        <tr>
                            <td>性别:</td>
                            <td colspan="2" style="padding-top: 20px; padding-bottom: 20px; padding-left: 20px;">
                                <label for="radio_boy"></label> <input type="radio" name="gender" id="radio_boy"
                                                                           class="form-check-input"
                                                                           value="boy">
                                &nbsp;
                                <label for="radio_girl"></label> <input type="radio" name="gender" id="radio_girl"
                                                                            class="form-check-input"
                                                                            value="girl">
                            </td>
                        </tr>
                        <tr>
                            <td><label for="age">年龄:</label></td>
                            <td colspan="2" style="padding-top: 20px; padding-bottom: 20px; padding-left: 20px;">
                                <input type="number" class="form-control" id="age" name="age" required="required" value=""></td>
                        </tr>
                        <tr>
                            <td><label for="age">Python熟练程度:</label></td>
                            <td colspan="2" style="padding-top: 20px; padding-bottom: 20px; padding-left: 20px;">
                                <select class="form-select" name="python_level">
                                    <option selected value="0">请选择熟练程度</option>
                                    <option value="完全没接触">完全没接触</option>
                                    <option value="初级Python水平">初级Python水平</option>
                                    <option value="中级Python水平">中级Python水平</option>
                                    <option value="高级Python水平">高级Python水平</option>
                                </select>

                            </td>
                        </tr>
                        <tr>
                            <td>目标技能:</td>
                            <td colspan="2" style="padding-top: 20px; padding-bottom: 20px; padding-left: 20px;">
                                <input type="checkbox" name="target_skills" value="网络爬虫" id="skill_spider" class="form-check-input">
                                <label for="skill_spider">
                                    网络爬虫
                                </label>
                                &nbsp;
                                <input type="checkbox" name="target_skills" value="数据处理与分析" id="skill_data_analysis"
                                       class="form-check-input">
                                <label for="skill_data_analysis">
                                    数据处理与分析
                                </label>
                                &nbsp;
                                <input type="checkbox" name="target_skills" value="Web开发" id="skill_web" class="form-check-input">
                                <label for="skill_web">
                                    Web开发
                                </label>
                                &nbsp;
                                <input type="checkbox" name="target_skills" value="办公自动化" id="skill_office" class="form-check-input">
                                <label for="skill_office">
                                    办公自动化
                                </label>
                                &nbsp;
                                <input type="checkbox" name="target_skills" value="人工智能" id="skill_ai" class="form-check-input">
                                <label for="skill_ai">
                                    人工智能
                                </label>
                                &nbsp;
                                <input type="checkbox" name="target_skills" value="量化交易" id="skill_stock_analysis"
                                       class="form-check-input">
                                <label for="skill_stock_analysis">
                                    量化交易
                                </label>
                            </td>
                        </tr>

                        <tr>
                            <td><label for="description">个人简介:</label></td>
                            <td colspan="2" style="padding-top: 20px; padding-bottom: 20px; padding-left: 20px;">
                                <textarea class="form-control" id="description" name="description" rows="3"
                                          required="required"></textarea>
                        </tr>

                        <tr>

                            <td colspan="2" style="padding-top: 20px; padding-bottom: 20px; text-align: right">
                                <button type="submit" id="submit_button" class="btn btn-primary">提交</button>
                            </td>
                        </tr>
                    </table>
                </form>
            </div>
        </div>
    </div>
</div>

<br/>

</div>

</div>



</body>
</html>

需要写出Python代码,使用selenium库


from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

# 设置Chrome浏览器驱动的路径(根据自己的实际情况修改)
chrome_driver_path = '/path/to/chromedriver'

# 创建Chrome浏览器驱动对象
driver = webdriver.Chrome(executable_path=chrome_driver_path)

# 打开网页
url = 'https://example.com'  # 将此处替换为你的网页URL
driver.get(url)

# 填写表单数据
driver.find_element_by_id('name').send_keys('张三')  # 姓名
driver.find_element_by_id('radio_boy').click()  # 性别(假设选中男性)
driver.find_element_by_id('age').send_keys('25')  # 年龄

# 选择Python熟练程度
python_level_select = driver.find_element_by_name('python_level')
python_level_select.send_keys('中级Python水平')  # 选择中级Python水平

# 选择目标技能
skills_checkbox = driver.find_elements_by_name('target_skills')
for checkbox in skills_checkbox:
    if checkbox.get_attribute('value') in ['网络爬虫', '数据处理与分析']:
        checkbox.click()  # 勾选网络爬虫和数据处理与分析

# 填写个人简介
driver.find_element_by_id('description').send_keys('我是一名Python学员,热爱编程。')

# 提交表单
driver.find_element_by_id('submit_button').click()

# 等待一段时间以便查看页面结果(可根据实际情况调整等待时间)
time.sleep(5)

# 关闭浏览器
driver.quit()

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^