整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          WebBrowser控件自動提交表單

          WebBrowser控件自動提交表單

          作中有這樣的場景,需要手動填寫很多格式一樣的表單,然后點擊提交。如果數據在Excel中,一個個的copy,重復性工作太繁瑣。今天就介紹一個實現網頁自動化的控件--WebBrowser控件。

          ﹥﹥先給大家看看效果:(自動填寫注冊頁面的表單數據)




          這個效果稍做改變,加個循環,就可以實現批量填入網頁表單數據,并自動提交。(備注:公司內部的表單一般是不會有驗證碼的,所以暫時不用考慮識別驗證碼的工作。)

          這就是WebBrowser控件的強大之處。下面就教大家如何實現上述網頁自動化的效果。

          ﹥﹥何為WebBrower?

          WebBrowser 是微軟提供的一個用于瀏覽網頁的 ActiveX 控件,是植入在程序中一個控件,網頁顯示在窗體中.可以利用WebBrowser 對網頁進行控制,進行一些操作。

          在VBA中WebBrowser 控件插入到 VBA 的用戶窗體、一般情況下,VBA 的控件工具箱中找不到該控件,需要在控件工具箱點擊右鍵,在右鍵菜單中選擇“附加控件”,在附加控件對話框中,找到“Microsoft Web Browser”并且勾選。




          控件工具箱中出現一個地球形狀的控件,這樣就可以把該控件和其他控件一樣,拖放到用戶窗體中使用。




          ﹥﹥制作方法:

          ■第一步:拖拽控件到窗體上,添加兩個按鈕。一個是打開網頁按鈕,一個是填入數據按鈕、一個點擊【提交按鈕】的按鈕。(實際可以合為一個按鈕,這里只是為了方便演示操作)




          ■第二步:分析網頁結構,找出需要填寫的表單文本框ID,還有提交按鈕的ID。

          網頁F12調出開發者工具,可以看到,對應于網頁上具體的控件內容,都有具體的html代碼。




          找到填寫昵稱的代碼段,我們看到,昵稱文本框的ID為"inputName",這就是我們需要的。用相同的方法,找到其他幾個文本框的ID。




          ■第三步:雙擊"打開網頁"按鈕,填入以下代碼;

          Private Sub CommandButton1_Click()
           UserForm1.WebBrowser1.Navigate "http://zc.7k7k.com/"
           UserForm1.WebBrowser1.Silent=True'禁止安全彈窗提醒
          End Sub
          

          雙擊"填入數據"按鈕,填入以下代碼

          Private Sub CommandButton2_Click()
           With UserForm1.WebBrowser1.Document
           .getElementById("inputName").Value=Range("a2")
           .getElementById("inputPwd").Value=Range("b2")
           .getElementById("inputRePwd").Value=Range("b2")
           .getElementById("inputRealName").Value=Range("c2")
           .getElementById("inputCardId").Value=Range("d2")
           End With
          End Sub
          

          雙擊"點擊按鈕"按鈕,填入以下代碼:(實現提交按鈕的點擊)

          Private Sub CommandButton3_Click()
           Set doc=UserForm1.WebBrowser1.Document
           For i=0 To doc.All.Length - 1
           If (LCase(doc.All(i).tagname))="input" Then
           If (LCase(doc.All(i).Type))="submit" Then
           Set tg=doc.All(i)
           tg.Click
           Exit Sub
           End If
           End If
           Next i
          End Sub
          


          這只是個簡單的例子,復雜的網頁需要具體的分析解決。

          我們也可以利用WebBrowser控件提取網頁的數據,因為網頁都是加載成功后的數據,所以內容基本都能提取成功。

          多數PHP程序都使用HTML表單從用戶那里獲取數據并計算結果。

          HTML表單的一些基本原則

          • 選擇適合于收集的數據類型和提供交互方式的控件。
          • 清楚標記每一個控件,這樣用戶就可以理解其功能。
          • 盡可能將標簽對齊。將控件的左邊緣對齊。
          • 將相關的標簽分組,并且通過設計中使用空白將每一個分組分開。
          • 表單上的控件順序應該類似于用戶操作他們的順序。

          創建基本HTML表單

          首先創造一個基本的HTML大綱,包含表單控件;然后將控件進行合并(HTML表單必須包括一個提交按鈕,用戶單擊它可以將表單數據發送到服務器。)一個單獨的HTML頁面可以包含多個表單。

          • 創建HTML結構

          包含表單的HTML結構和和普通的HTML結構一樣。

          <HTML>
            <HEAD>
            <TITLE>標題放在這</TITLE>
            </HEAD>
          <BODY>
            表單頁面放在這
            </BODY>
            </HTML>

          在包含表單的HTML頁面中可以使用任何HTML標簽。基本的表單使用FROM標簽來說明。該標簽中METHOD屬性接收GET或POST兩個值中的一個。ACTION屬性子明PHP腳本的url,該腳本可以收集通過表單收集的數據,可以是絕對路徑或者相對路徑

          <FORM METHOD="method" ACTION="url"> 
            中間可以放置表單控件
            </FORM>
          • 合并控件

          兩個常用的基本控件:文本框和提交按鈕。

          文本框:允許用戶鍵入信息以發送給PHP腳本。NAME屬性為文本提供名稱,PHP腳本可以通過名稱準確訪問其內容,因此它應該是唯一的且符合PHP變量命名規則(但不需要$符號),單標簽。VALUE屬性指明出現在提交按鈕上面的標題。創建方式如下:

          <INPUT TYPE="TEXT" NAME="text">

          提交按鈕:允許用戶將一個表單的內容發送到服務器,一個HTML表單對應應該有一個提交按鈕。

          示例:一個完整的HTML表單。

          <HTML>
            <HEAD>
            <TITLE>標題</TITLE>
            </HEAD>
          <BODY>
          <FORM METHOD="POST" ACTION="phpinfo.php">
          <INPUT TYPE="TEXT" NAME="user_name">
          <BR/>
          <BR/>
          <INPUT TYPE="TEXT" NAME="user_email">
          <BR/>
          <BR/>
          <INPUT TYPE="SUBMIT" VALUE="Send the Data">
          </FORM>
            </BODY>
            </HTML>


          • 使用多個表單

          可以在一個HTML頁面中包含多個表單,注意下一個表單的FORM開始之前需要結束前一個FORM表單。

          <HTML>
            <HEAD>
            <TITLE>標題</TITLE>
            </HEAD>
          <BODY>
            
          <FORM METHOD="POST" ACTION="phpinfo.php">
          <INPUT TYPE="TEXT" NAME="user_name">
          <BR/>
          <BR/>
          <INPUT TYPE="TEXT" NAME="user_email">
          <BR/>
          <BR/>
          <INPUT TYPE="SUBMIT" VALUE="Send the Data">
          <BR/>
          <BR/>
          </FORM>
          
          <FORM METHOD="POST" NAME="phpinfo.php">
          <INPUT TYPE="TEXT" NAME="user_name1">
          <BR/>
          <BR/>
          <INPUT TYPE="TEXT" NAME="user_email1">
          <BR/>
          <BR/>
          <INPUT TYPE="SUBMIT" VALUE="Send the Data1">
          </FORM>
          
            </BODY>
            </HTML>


          創建表單控件

          • 創建自定義的文本框

          文本框的屬性中,TYPE和NAME是必須的,其余是可選屬性。SIZE屬性用于設置文本框的可視大小;MAXLENGTH指明用戶鍵入字符的最大長度;VALUE給出了一個最初顯示在文本框中的值。

          <input type="text" name="" size="" maxlength="" value="">
          • 創建文本區域

          文本區域可以輸入多行文本。NAME和ROWS屬性是必須的。ROWS屬性表明了文本區域內可以看到的文本行數,充滿時會滾動。COLS屬性指明可見文本列數與行數類似。WRAP屬性指明文本區域內單詞換行的方式,可以指定如下值。該標簽為雙標簽。

          說明

          off

          禁止單詞換行但用戶可以輸入換行符強制換行

          virtual/soft

          各行顯示為換行,但是換行并沒有被發送到服務器

          physica/hard

          啟用了單詞換行

          <inputarea name="" rows="" cols="" wrap="">
          • 創建密碼框

          創建密碼框的語法與文本框相同,但要將TYPE屬性指定為PASSWORD而不是TYPE。

          <input type="password" name="" size="" maxlength="" value="">
          • 創建復選框

          取兩個值中的一個,即二選一。TYPE屬性是必須的,checked屬性出現,該復選框默認情況會被選定。value屬性指定復選框被選定情況下被發送到服務器的值,默認發送on值。法如下:

          <input type="checkbox" name="" checked value="">
          • 創建單選按鈕

          語法與復選框屬性含義相同,但是TYPE屬性的值必須是RADIO,NAME屬性是必須的。

          <input type="radio" name="" checked value="">
          • 創建列表框

          用戶可以選擇一個或者多個選項,它是一個滾動菜單。

          <select name="" multipile size="">options go here</select>

          name屬性是必須的,multipile屬性指明用戶可以通過按下crtl鍵并單擊多個選項來選擇它們

          列表框的單選行為可作為單選按鈕。

          <option selected value="text"></options>
          • 創建隱藏域
          <input type="hidden" name="text"value="">
          • 實現上傳文件的HTML表單
          <input type="FILE" name="name" accept="time" value="text">

          其中type屬性是必須的。格式通過使用MIME碼指定。常用的格式如下:


          超文本標記語言文本 .html,.html text/html

            普通文本 :txt text/plain

            word文檔:application/msword

            RTF文本 :rtf application/rtf

            GIF圖形 :gif image/gif

            JPEG圖形 :jpeg,

            jpg: image/jpeg

            au聲音文件:au audio/basic

            MIDI音樂文件 :mid,.midi audio/midi,audio/x-midi

            RealAudio音樂文件 .ra, .ram audio/x-pn-realaudio

            MPEG文件 .mpg,.mpeg video/mpeg

            AVI文件 .avi video/x-msvideo

            GZIP文件 .gz application/x-gzip

            壓縮文件.rar application/octet-stream

            壓縮文件.zip application/x-zip-compressed

            TAR文件 .tar application/x-tar


          更多提交表單的信息

          • 使用圖像提交數據
          <input type="image" src="url" name="text" align="align">
          • 創建重置按鈕
          <input type="reset" value="text">

          天小編給大家帶來的是html表單提交教程,非常簡單!

          話不多說直接進入教程

          首先要注意的事項:

          第一:因為這節課涉及到了php所以本地要安裝php

          在這里小編用的是phpStudyphpStudy(特點簡單很適合本地開發測試)

          phpStudy界面

          第二:在php編碼里一定要注意不要編寫錯誤

          <?php //為開頭 //為結尾?>

          <?php 這里寫php代碼 ?>

          要切記php代碼要以分號未結束 “;”

          首頁我們到我們剛剛安裝的軟件根目錄下,找到www這個文件夾

          雙擊打開建立一個新文件夾(在這我命名為了表單的拼音你們可以自己命名為你們想命名的名字,切記不能用中文)

          在打開剛剛建立好的文件夾創建兩個文件分別命名為orderform.html和processorder.php(當然你也可以自己取名)

          我們用編程軟件打開這兩個新建文件(這里我用的是Sublime Text 3)

          我們首先給orderform.html寫下如下代碼

          然后我們開始寫建立表單

          我們訪問本地連接看一下效果

          我們在給php寫入代碼

          以下為注意事項

          <!--<?php //為php代碼 eoch為輸出代碼 $_POST為接收html提交過來的數據 $tireqty=$_POST['tireqty']

          //$sj=$_POST['sj']

          //$dz=$_POST['dz'] 為給建立的變量賦值? echo "$tireqty";為輸出這個變量-->

          首先我們寫入和html一下的html代碼

          在寫入php接收函數

          完成效果

          以下是html里的代碼

          <!DOCTYPE html>

          <html>

          <head>

          <!--這里編碼為utf-8國際編碼-->

          <meta charset="utf-8">

          <!--這里為網站標題-->

          <title>表單</title>

          </head>

          <body>

          <!--action為提交的頁面 method為提交類型 分為兩種一種為post還一種為get -->

          <form action="processorder.php" method="post">

          <!--border="0"為邊框粗細-->

          <table border="0">

          <!-- bgcolor="#cccccc"為表格背景顏色這里為灰色 -->

          <tr bgcolor="#cccccc">

          <td>參數</td>

          <!-- aligan="center"為表格居中 -->

          <td align="center">數據</td>

          </tr>

          <tr>

          <td>姓名</td>

          <!-- <input type="text" name="tireqty" size //這里為type為提交類型

          text為文本類型 name為名稱和class一樣 size為字體大小-->

          <td align="center"><input type="text" name="tireqty" size="3"/></td>

          </tr>

          <tr>

          <td>手機</td>

          <td align="center"><input type="text" name="sj" size="3"/></td>

          </tr>

          <tr>

          <td>地址</td>

          <td align="center"><input type="text" name="dz" size="3"/></td>

          </tr>

          <tr>

          <!-- <input type="text" value="提交" value為input 元素的值 colspan為合并-->

          <td colspan="0" align="center"><input type="submit" value="提交"/></td>

          </tr>

          </table>

          </form>

          </body>

          </html>

          以下是php中代碼

          <!DOCTYPE html>

          <html>

          <head>

          <meta charset="utf-8">

          <title>接收</title>

          </head>

          <body>

          <form>

          <?php

          $tireqty=$_POST['tireqty'];

          $sj=$_POST['sj'];

          $dz=$_POST['dz'];

          ?>

          <table border="0">

          <tr>

          <td>參數</td>

          <td align="center">數據</td>

          </tr>

          <tr>

          <td>姓名</td>

          <td align="center"><?php echo "$tireqty"; ?></td>

          </tr>

          <tr>

          <td>手機</td>

          <td align="center"><?php echo "$sj"; ?></td>

          </tr>

          <tr>

          <td>地址</td>

          <td align="center"><?php echo "$dz"; ?></td>

          </tr>

          </table>

          </form>

          </body>

          </html>

          謝謝觀看,喜歡的就收藏加關注吧!


          主站蜘蛛池模板: 国产一区二区三区高清视频| 国产丝袜视频一区二区三区| 精品少妇人妻AV一区二区| 久久精品视频一区二区三区| 国产一区美女视频| 亚洲国产一区二区a毛片| 一区二区三区在线|日本| 久久久国产精品无码一区二区三区| 一区二区三区视频在线| 看电影来5566一区.二区| 中文字幕日韩精品一区二区三区 | 视频一区二区三区人妻系列| 水蜜桃av无码一区二区| 中文日韩字幕一区在线观看| 国产乱码精品一区二区三区四川 | 国产精品久久久久久一区二区三区| 中文字幕精品无码一区二区三区| 波多野结衣在线观看一区二区三区 | 日韩AV在线不卡一区二区三区| 国产精品一区在线观看你懂的| 精品国产天堂综合一区在线| 无码丰满熟妇浪潮一区二区AV | 91午夜精品亚洲一区二区三区 | 亚洲爆乳无码一区二区三区| 国产一区二区视频在线观看| 国产美女露脸口爆吞精一区二区| 视频精品一区二区三区| 国模大胆一区二区三区| 亚洲AV香蕉一区区二区三区| 亚洲一区二区三区在线观看网站| 波多野结衣一区二区| 欧美日韩综合一区二区三区| 亚洲av乱码一区二区三区香蕉| 久久精品一区二区三区AV| 一区二区三区无码被窝影院| 色老板在线视频一区二区| 日本一区精品久久久久影院| 久久无码人妻一区二区三区午夜 | 一区二区三区精品视频| 国产未成女一区二区三区| 国产一区二区成人|