Python讀Excel數據自動化填入日常辦公的網頁表單


 

前言

本篇內容,讓你完全掌握Python是如何自動化辦公的~

一、環境准備

1.1  Python 3.7.0

1.2  Pycharm  (Python 開發工具)

1.3 Selenium    (處理網頁表單工具類)  

1.4  openpyxl  (處理Excel工具類)

 

selenium 安裝:pip install selenium  -i https://pypi.douban.com/simple/

openpyxlpy安裝:pip install openpyxl -i https://pypi.douban.com/simple/

 

python3.7.0、pycharm 軟件均在我們的百度網盤里:https://pan.baidu.com/s/1Pe0cZzLU1v46EHZZ7EGCnQ

資源失效了請加Python學習交流群進行獲取:367203382

我們即將要從Excel中處理的數據長這樣:

 

 

 


 

 

二、上代碼

我們想創建一個.py 文件來實現我們的目標

2.1 先引入我們需要的工具類

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from openpyxl import load_workbook
import time

  

2.2  初始化谷歌Driver

# 1、初始化瀏覽器驅動器
def init_driver():
    path = 'E:\\Python_Office_Auto\\Day15\\chromedriver.exe'  # 這個要准備chromedriver.exe 放到我們.py 文件同目錄。不知道如何獲取,加群:367203382,問群主~~~
    chrome_options = Options() 
    # 1、 添加user-agent
    chrome_options.add_argument(
        'user-agent="Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.163 Safari/535.1"')
    # 2、把配置屬性傳遞給驅動程序、並制定驅動程序的路徑
    driver = webdriver.Chrome(executable_path=path, options=chrome_options)
    # 3、隱式等待(給每個網頁的元素5秒鍾的時間,5秒過后不出現、定位網頁元素不存在、並進入異常處理)
    driver.implicitly_wait(5)
    return driver

 

2.3  讀取Excel

def read_excel():
    wb = load_workbook("用戶表.xlsx")
    ws = wb.active
    list_users = []
    for row in ws.iter_rows(min_row=2, max_row=4, min_col=1, max_col=4, values_only=True):
        list_users.append(row)
    return list_users

 

2.4 填寫表單

def input_form(user):
    driver.get('https://www.wjx.top/jq/81172286.aspx')
    driver.find_element_by_name('q1').send_keys(user[0])
    if user[1] =='':
        # 點擊男性
        driver.find_elements_by_class_name('jqRadio')[0].click()
    else:
        # 點擊女性
        driver.find_elements_by_class_name('jqRadio')[1].click()

    # 手機號
    driver.find_element_by_name('q3').send_keys(user[2])
    # 建議
    driver.find_element_by_name('q4').send_keys(user[3])
    # 提交
    driver.find_element_by_id('submit_button').click()
    time.sleep(3)

 

2.5 main 函數運行整個代碼

if __name__ == '__main__':

    # 初始化谷歌瀏覽器驅動器
    driver = init_driver()

    # 讀取Excel 文件,把每行數據放到列表里。
    list_users = read_excel()

    # 遍歷列表,取出用戶信息
    for user in list_users:
        # 執行填寫表單操作
        input_form(user)
    # 最后退出瀏覽器
    driver.quit()

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM