Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 日韩亚洲人成网站在线播放,五月色婷婷亚洲小说,求欧美精品网址

          整合營(yíng)銷(xiāo)服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢(xún)熱線(xiàn):

          如何使用Pandas read_html從HTML表格中獲取數(shù)據(jù)

          本Pandas教程中,我們將詳細(xì)介紹如何使用Pandas read_html方法從HTML中獲取數(shù)據(jù)。首先,在最簡(jiǎn)單的示例中,我們將使用Pandas從一個(gè)字符串讀取HTML。其次,我們將通過(guò)幾個(gè)示例來(lái)使用Pandas read_html從Wikipedia表格中獲取數(shù)據(jù)。在之前的一篇文章(關(guān)于Python中的探索性數(shù)據(jù)分析)中,我們也使用了Pandas從HTML表格中讀取數(shù)據(jù)。

          在Python中導(dǎo)入數(shù)據(jù)

          在開(kāi)始學(xué)習(xí)Python和Pandas時(shí),為了進(jìn)行數(shù)據(jù)分析和可視化,我們通常從實(shí)踐導(dǎo)入數(shù)據(jù)開(kāi)始。在之前的文章中,我們已經(jīng)了解到我們可以直接在Python中輸入值(例如,從Python字典創(chuàng)建Pandas dataframe)。然而,通過(guò)從可用的源導(dǎo)入數(shù)據(jù)來(lái)獲取數(shù)據(jù)當(dāng)然更為常見(jiàn)。這通常是通過(guò)從CSV文件或Excel文件中讀取數(shù)據(jù)來(lái)完成的。例如,要從一個(gè).csv文件導(dǎo)入數(shù)據(jù),我們可以使用Pandas read_csv方法。這里有一個(gè)如何使用該方法的快速的例子,但一定要查看有關(guān)該主題的博客文章以獲得更多信息。

          現(xiàn)在,上面的方法只有在我們已經(jīng)有了合適格式的數(shù)據(jù)(如csv或JSON)時(shí)才有用(請(qǐng)參閱關(guān)于如何使用Python和Pandas解析JSON文件的文章)。

          我們大多數(shù)人會(huì)使用Wikipedia來(lái)了解我們感興趣的主題信息。此外,這些Wikipedia文章通常包含HTML表格。

          要使用pandas在Python中獲得這些表格,我們可以將其剪切并粘貼到一個(gè)電子表單中,然后,例如使用read_excel將它們讀入Python。現(xiàn)在,這個(gè)任務(wù)當(dāng)然可以用更少的步驟來(lái)完成:我們可以通過(guò)web抓取來(lái)對(duì)它進(jìn)行自動(dòng)化。一定要查看一下什么是web抓取。

          先決條件

          當(dāng)然,這個(gè)Pandas讀取HTML教程將要求我們安裝Pandas及其依賴(lài)項(xiàng)。例如,我們可以使用pip來(lái)安裝Python包,比如Pandas,或者安裝一個(gè)Python發(fā)行版(例如,Anaconda、ActivePython)。下面是如何使用pip安裝Pandas: pip install pandas。

          注意,如果出現(xiàn)消息說(shuō)有一個(gè)更新版本的pip可用,請(qǐng)查看這篇有關(guān)如何升級(jí)pip的文章。注意,我們還需要安裝lxml或BeautifulSoup4,當(dāng)然,這些包也可以使用pip來(lái)安裝: pip install lxml。

          Pandas read_html 語(yǔ)法

          下面是如何使用Pandas read_html從HTML表格中抓取數(shù)據(jù)的最簡(jiǎn)單的語(yǔ)法:

          現(xiàn)在我們已經(jīng)知道了使用Pandas讀取HTML表格的簡(jiǎn)單語(yǔ)法,接下來(lái)我們可以查看一些read_html示例。

          Pandas read_html 示例1:

          第一個(gè)示例是關(guān)于如何使用Pandas read_html方法的,我們將從一個(gè)字符串讀取HTML表格。

          現(xiàn)在,我們得到的結(jié)果不是一個(gè)Pandas DataFrame,而是一個(gè)Python列表。也就是說(shuō),如果我們使用type函數(shù),我們可以看到:

          如果我們想得到該表格,我們可以使用列表的第一個(gè)索引(0)

          Pandas read_html 示例 2:

          在第二個(gè)Pandas read_html示例中,我們將從Wikipedia抓取數(shù)據(jù)。實(shí)際上,我們將得到蟒科蛇(也稱(chēng)為蟒蛇)的HTML表格。

          現(xiàn)在,我們得到了一個(gè)包含7個(gè)表(len(df))的列表。如果我們?nèi)ikipedia頁(yè)面,我們可以看到第一個(gè)表是右邊的那個(gè)。然而,在本例中,我們可能對(duì)第二個(gè)表更感興趣。

          Pandas read_html 示例 3:

          在第三個(gè)示例中,我們將從瑞典的covid-19病例中讀取HTML表。這里,我們將使用read_html方法的一些附加參數(shù)。具體來(lái)說(shuō),我們將使用match參數(shù)。在此之后,我們還需要清洗數(shù)據(jù),最后,我們將進(jìn)行一些簡(jiǎn)單的數(shù)據(jù)可視化操作。

          使用Pandas read_html和匹配參數(shù)抓取數(shù)據(jù):

          如上圖所示,該表格的標(biāo)題為:“瑞典各郡新增COVID-19病例”。現(xiàn)在,我們可以使用match參數(shù)并將其作為一個(gè)字符串輸入:

          通過(guò)這種方式,我們只得到這個(gè)表,但它仍然是一個(gè)dataframes列表。現(xiàn)在,如上圖所示,在底部,我們有三個(gè)需要?jiǎng)h除的行。因此,我們要?jiǎng)h除最后三行。

          使用Pandas iloc刪除最后的行

          現(xiàn)在,我們將使用Pandas iloc刪除最后3行。注意,我們使用-3作為第二個(gè)參數(shù)(請(qǐng)確保你查看了這個(gè)Panda iloc教程,以獲得更多信息)。最后,我們還創(chuàng)建了這個(gè)dataframe的一個(gè)副本。

          在下一節(jié)中,我們將學(xué)習(xí)如何將多索引列名更改為單個(gè)索引。

          將多索引更改為單個(gè)索引并刪除不需要的字符

          現(xiàn)在,我們要去掉多索引列。也就是說(shuō),我們將把2列索引(名稱(chēng))變成唯一的列名。這里,我們將使用DataFrame.columns 和 DataFrame.columns,get_level_values:

          最后,正如你在“date”列中所看到的,我們使用Pandas read_html從WikiPedia表格抓取了一些注釋。接下來(lái),我們將使用str.replace方法和一個(gè)正則表達(dá)式來(lái)刪除它們:

          使用Pandas set_index更改索引

          現(xiàn)在,我們繼續(xù)使用Pandas set_index將日期列變成索引。這樣一來(lái),我們稍后就可以很容易地創(chuàng)建一個(gè)時(shí)間序列圖。

          現(xiàn)在,為了能夠繪制這個(gè)時(shí)間序列圖,我們需要用0填充缺失的值,并將這些列的數(shù)據(jù)類(lèi)型更改為numeric。這里我們也使用了apply方法。最后,我們使用cumsum方法來(lái)獲得列中每個(gè)新值累加后的值:

          來(lái)自HTML表格的時(shí)間序列圖

          在最后一個(gè)示例中,我們使用Pandas read_html獲取我們抓取的數(shù)據(jù),并創(chuàng)建了一個(gè)時(shí)間序列圖。現(xiàn)在,我們還導(dǎo)入了matplotlib,這樣我們就可以改變Pandas圖例的標(biāo)題的位置:

          結(jié)論: 如何將HTML讀取到一個(gè) Pandas DataFrame

          在這個(gè)Pandas教程中,我們學(xué)習(xí)了如何使用Pandas read_html方法從HTML中抓取數(shù)據(jù)。此外,我們使用來(lái)自一篇Wikipedia文章的數(shù)據(jù)來(lái)創(chuàng)建了一個(gè)時(shí)間序列圖。最后,我們也可以通過(guò)參數(shù)index_col來(lái)使用Pandas read_html將' Date '列設(shè)置為索引列。

          英文原文:https://www.marsja.se/how-to-use-pandas-read_html-to-scrape-data-from-html-tables
          譯者:一瞬

          前端開(kāi)發(fā)中,經(jīng)常需要獲取用戶(hù)輸入框中的內(nèi)容。本文將介紹幾種常用的JavaScript方法來(lái)獲取輸入框內(nèi)容,幫助您輕松應(yīng)對(duì)獲取輸入框內(nèi)容的需求。

          方法一:使用 value 屬性

          let input = document.getElementById("myInput");
          let content = input.value;
          console.log(content);

          通過(guò) getElementById() 方法獲取輸入框的 DOM 元素。

          使用 value 屬性獲取輸入框的文本內(nèi)容。

          方法二:使用 querySelector() 方法

          let input = document.querySelector("#myInput");
          let content = input.value;
          console.log(content);

          使用 querySelector() 方法獲取輸入框的 DOM 元素。

          使用 value 屬性獲取輸入框的文本內(nèi)容。

          方法三:使用 onchange 事件

          let input = document.getElementById("myInput");
          input.onchange = function() {
           let content = input.value;
           console.log(content);
          }

          通過(guò) onchange 事件在輸入框內(nèi)容變化時(shí)觸發(fā)函數(shù)。

          在事件處理函數(shù)中,使用 value 屬性獲取輸入框的新文本內(nèi)容。

          方法四:使用 oninput 事件

          let input = document.getElementById("myInput");
          input.oninput = function() {
           let content = input.value;
           console.log(content);
          }

          通過(guò) oninput 事件實(shí)時(shí)獲取輸入框內(nèi)容的變化。

          在事件處理函數(shù)中,使用 value 屬性獲取輸入框的新文本內(nèi)容。

          以上是JavaScript獲取輸入框內(nèi)容的幾種常用方法。您可以根據(jù)具體的需求和場(chǎng)景選擇適合的方法。在實(shí)際開(kāi)發(fā)中,根據(jù)頁(yè)面結(jié)構(gòu)和交互需求選擇最合適的方式獲取輸入框內(nèi)容,以提升用戶(hù)體驗(yàn)。

          注意:

          本文僅供參考,請(qǐng)根據(jù)實(shí)際情況進(jìn)行使用。

          在獲取輸入框內(nèi)容時(shí),可以通過(guò)驗(yàn)證和過(guò)濾確保數(shù)據(jù)的安全性。

          對(duì)于多個(gè)輸入框,可以使用不同的方法來(lái)獲取各自的內(nèi)容。

          有下拉列表的表單

          題目只能有30個(gè)字,不能寫(xiě)全,其實(shí)今天我們要學(xué)習(xí)的內(nèi)容有三個(gè),第一,下拉列表表單,第二,多行文字輸入表單,第三,數(shù)據(jù)集表單。

          開(kāi)始學(xué)習(xí)吧!

          前天和昨天我們?cè)凇禜TML表單元素初識(shí)1——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作》和《HTML表單元素初識(shí)2——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作》中基本上把<input/>標(biāo)簽的type屬性里不同的值進(jìn)行了講解與實(shí)踐,今天我們來(lái)學(xué)習(xí)其他包含在<form></form>之間的元素。

          帶有下拉列表的表單

          我們?cè)谝恍┚W(wǎng)站填寫(xiě)注冊(cè)信息時(shí),經(jīng)常會(huì)遇到選擇"生活所在地"的操作,因?yàn)橹袊?guó)的地名是固定的,因此頁(yè)面會(huì)為我們提供一個(gè)下拉列表選項(xiàng),我們直接點(diǎn)選即可,就不需要輸入文字了,這樣操作的好處在于不會(huì)出現(xiàn)拼寫(xiě)錯(cuò)誤。例如:

          寫(xiě)這個(gè)功能我們需要介紹一組新標(biāo)簽<select></select>。"select"(選擇)。在這個(gè)標(biāo)簽中再添加<option></option>。"option"(選項(xiàng))。這樣就可以寫(xiě)出帶有下拉列表的表單了,示例代碼如下:

          <select><option></option></select>

          這段代碼我們繼續(xù)在昨天的"表單.html"文件中添加即可,在<input type = "image" src = "img/示例圖片/submit.jpg"/><br>這段代碼之前即可!與這個(gè)圖片提交按鈕共用一個(gè)<form></form>標(biāo)簽!

          下面我們?yōu)槎噙x表單添加名稱(chēng),示例代碼如下:

          請(qǐng)選擇省份<select><option></option></select>

          下面我們添加不同選項(xiàng),示例代碼如下:

          請(qǐng)選擇省份
            <select >
            <option >河北</option>
            <option >山東</option>
            <option >河南</option>
            <option >海南</option>
            <option >江蘇</option>
            <option >安徽</option>
            </select>
            <br><br>

          為了規(guī)范起見(jiàn),我們?yōu)楸韱涡畔⑻砑觧ame和value屬性,示例代碼如下:

          請(qǐng)選擇省份
            <select name = "province">
            <option value="Hebei">河北</option>
            <option value="Shandong">山東</option>
            <option value="Henan">河南</option>
            <option value="Hainan">海南</option>
            <option value="Jiangsu">江蘇</option>
            <option value="Anhui">安徽</option>
            </select>
            <br><br>

          大家要注意的是,在下拉列表表單中,name寫(xiě)在<select>中,value寫(xiě)在<option>中。

          頁(yè)面效果如下:

          這里告訴大家一個(gè)規(guī)律,下拉列表表單默認(rèn)顯示第一個(gè)<option></option>中的文字內(nèi)容。

          如果您想改變這個(gè)默認(rèn)顯示,請(qǐng)?jiān)谛枰@示的<option>中添加selected屬性,并賦值為"selected"。

          示例代碼如下:

          請(qǐng)選擇省份
            <select name = "province">
            <option value="Hebei">河北</option>
            <option value="Shandong">山東</option>
            <option value="Henan" selected="selected">河南</option>
           <!--選中這個(gè)選項(xiàng)--><option value="Hainan">海南</option><option value="Jiangsu">江蘇</option><option value="Anhui">安徽</option></select><br><br>

          頁(yè)面效果如圖:

          多行文字輸入表單

          我們?cè)谖鞴弦曨l上發(fā)布視頻時(shí)會(huì)被要求填寫(xiě)視頻描述,頁(yè)面中的輸入框不是像下圖這么短的單行輸入框。

          而是多行輸入框,如圖:

          使用<textarea></textarea>標(biāo)簽即可添加這樣的輸入框,不過(guò)要設(shè)置row(列)和cols(行)屬性的數(shù)值。示例代碼如下:

          <br>請(qǐng)簡(jiǎn)要描述您的劇本的情節(jié)<br><textarea row="3" cols="20"></textarea><br>

          這段代碼添加到</select><br><br>之后,與其共同使用一個(gè)<form></form>標(biāo)簽。

          下面我們?yōu)檫@個(gè)多行輸入框添加一些提示和限制。

          首先,添加提示文字,和type="text"的<input/>標(biāo)簽一樣,都是使用placeholder屬性。

          第二,我們限制一下字?jǐn)?shù),使用maxlength(最大長(zhǎng)度)屬性。

          第三,在頁(yè)面加載完成后,直接讓光標(biāo)停留在輸入框中,使用autofocus屬性。

          下面看看如何寫(xiě)吧,示例代碼如下:(不要忘記寫(xiě)好name屬性!)

          <br>
          請(qǐng)簡(jiǎn)要描述您的劇本的情節(jié)<br>
          <textarea row="3" cols="20" name ="storyOutLine"placeholder="最多輸入80字"maxlength="80"autofocus></textarea><br>

          頁(yè)面效果如圖:

          如果刷新頁(yè)面不能正確顯示,請(qǐng)嘗試關(guān)閉后重新打開(kāi)!

          數(shù)據(jù)集表單

          數(shù)據(jù)集表單實(shí)際上就是一個(gè)將不同選項(xiàng)或信息打包上傳的設(shè)置。

          當(dāng)一組表單元素放到 <fieldset> 標(biāo)簽內(nèi)時(shí),瀏覽器會(huì)以特殊方式來(lái)顯示它們,它們可能有特殊的邊界、3D 效果,或者甚至可創(chuàng)建一個(gè)子表單來(lái)處理這些元素。(W3school)

          這個(gè)數(shù)據(jù)集有三個(gè)部分組成,首先是<fliedset></fliedset>,這個(gè)標(biāo)簽不會(huì)顯示,只是告訴瀏覽器這里的數(shù)據(jù)要打包。

          第二是<legend></legend>,"legend"(說(shuō)明),這里添加數(shù)據(jù)集名稱(chēng)。

          第三就是我們之前學(xué)到的那些標(biāo)簽了。

          示例代碼如下:

          <fliedset> <legend>信息打包</legend> </fliedset>

          下面我們使用這段代碼把form2打包一下吧。示例代碼如下:

          <form>
            <fieldset><!--開(kāi)始-->
            <legend>信息打包</legend><br>
            <!--標(biāo)題-->興趣愛(ài)好:<br>
            <input type = "checkbox" name = "hobby" value = "reading"/>讀書(shū)
            <input type = "checkbox" name = "hobby" value = "film"/>電影
            <input type = "checkbox" name = "hobby" value = "painting"/>繪畫(huà)
            <input type = "checkbox" name = "hobby" value = "music"/>音樂(lè)
            <br>
            最高學(xué)歷:<br>
            <input type = "radio" name = "education" value = "highSchool"/>高中
            <input type = "radio" name = "education" value = "bachelor"/>本科
            <input type = "radio" name = "education" value = "master"/>碩士
            <input type = "radio" name = "education" value = "doctor"/>博士
            <br>
            請(qǐng)選擇省份
            <select name = "province">
            <option value="Hebei">河北</option>
            <option value="Shandong">山東</option>
            <option value="Henan" selected="selected">河南</option><!--選中這個(gè)選項(xiàng)-->
            <option value="Hainan">海南</option>
            <option value="Jiangsu">江蘇</option>
            <option value="Anhui">安徽</option>
            </select>
            <br><br><br>
            請(qǐng)簡(jiǎn)要描述您的劇本的情節(jié)<br>
            <textarea row="3" cols="20" name ="storyOutLine"placeholder="最多輸入80字"maxlength="80"autofocus></textarea>
            <br>
            </fieldset><!--結(jié)尾-->
            <input type = "image" src = "img/示例圖片/submit.jpg"/><br>
            <input type="reset" /><br>
            <input type = "submit" value = "submit"/>
            </form>

          頁(yè)面效果如下:

          今天的內(nèi)容結(jié)束了!

          如果您喜歡我的教程請(qǐng)關(guān)注我,點(diǎn)贊也能讓我充滿(mǎn)動(dòng)力!

          HTML完整學(xué)習(xí)目錄

          HTML序章(學(xué)習(xí)目的、對(duì)象、基本概念)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML是什么?——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          第一個(gè)HTML頁(yè)面如何寫(xiě)?——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML頁(yè)面中head標(biāo)簽有啥用?——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          初識(shí)meta標(biāo)簽與SEO——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML中的元素使用方法1——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML中的元素使用方法2——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML元素中的屬性1——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML元素中的屬性2(路徑詳解)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          使用HTML添加表格1(基本元素)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          使用HTML添加表格2(表格頭部與腳部)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          使用HTML添加表格3(間距與顏色)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          使用HTML添加表格4(行顏色與表格嵌套)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          16進(jìn)制顏色表示與RGB色彩模型——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML中的塊級(jí)元素與內(nèi)聯(lián)元素——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          初識(shí)HTML中的<div>塊元素——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          在HTML頁(yè)面中嵌入其他頁(yè)面的方法——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          封閉在家學(xué)網(wǎng)頁(yè)制作!為頁(yè)面嵌入PDF文件——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML表單元素初識(shí)1——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML表單元素初識(shí)2——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML表單3(下拉列表、多行文字輸入)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML表單4(form的action、method屬性)——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML列表制作講解——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          為HTML頁(yè)面添加視頻、音頻的方法——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          音視頻格式轉(zhuǎn)換神器與html視頻元素加字幕——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作

          HTML中使用<a>標(biāo)簽實(shí)現(xiàn)文本內(nèi)鏈接——零基礎(chǔ)自學(xué)網(wǎng)頁(yè)制作


          主站蜘蛛池模板: 人妻免费一区二区三区最新| 一区二区三区在线视频播放| 日韩国产一区二区| 国产在线视频一区二区三区98| 成人丝袜激情一区二区| 人妻体体内射精一区二区| 一区二区三区四区视频在线| 精品国产免费观看一区| 亚洲av乱码一区二区三区| 秋霞无码一区二区| 亚洲视频在线一区| 亚洲bt加勒比一区二区| 无码乱人伦一区二区亚洲| 国产亚洲情侣一区二区无码AV| 波多野结衣一区二区三区高清av | 精品国产区一区二区三区在线观看 | 丝袜无码一区二区三区| www一区二区三区| 免费一区二区无码视频在线播放| 丰满爆乳无码一区二区三区| 在线精品一区二区三区电影| 97久久精品无码一区二区| 亚洲av乱码一区二区三区香蕉| 久久无码AV一区二区三区| 精品无码成人片一区二区98| 91视频国产一区| 亚洲一区二区三区成人网站 | 一区二区三区在线| 国产在线不卡一区二区三区| 亚洲夜夜欢A∨一区二区三区| 在线观看免费视频一区| 久久一本一区二区三区| 无码人妻视频一区二区三区| 人妻AV中文字幕一区二区三区| 亚洲制服丝袜一区二区三区 | 国产福利电影一区二区三区| 中文字幕在线一区二区三区| 日本一区二区不卡视频| 偷拍激情视频一区二区三区| 国产一区二区草草影院| 一区二区精品在线观看|