html标签 补全方法 python,Python Beautiful Soup学习之HTML标签补全功能
Beautiful Soup是一個非常流行的Python模塊。該模塊可以解析網(wǎng)頁,并提供定位內(nèi)容的便捷接口。
使用下面兩個命令安裝:
pip install beautifulsoup4或者?sudo apt-get install Python-bs4
如果想安裝最新的版本,請直接下載安裝包來手動安裝,也是十分方便的方法。
在這里我安裝的是 Beautiful Soup 4.5.1
下載完成之后把解壓包放到site-package目錄下,cd到解壓包中,運行下面的命令即可完成安裝:
sudo python setup.py install
然后需要安裝lxml:
sudo apt-get install Python-lxml
使用Beautiful Soup的第一步是將已下載的HTML內(nèi)容解析為soup文檔。
由于大多數(shù)網(wǎng)頁都不具備良好的HTML格式,因此Beautiful Soup需要對其實際格式進行確定。
例如,在下面這個簡單網(wǎng)頁的列表中,存在屬性值兩側(cè)引號缺失和標簽未閉合的問題。
markup ="
fdsf"
我們可以看到P標簽未閉合。下面讓我們看一下Beautiful Soup是如何處理的。
#!/usr/bin/env python
# -*- coding:utf-8 -*-
from bs4 import BeautifulSoup
markup ="
It's wonderful"
tags = []
#soup = BeautifulSoup(markup,'html.parser')
#環(huán)境問題,可能報錯,暫時還沒搞懂html.parser和lxml的區(qū)別,后續(xù)跟進,如果報錯,就用下一行的代碼
soup = BeautifulSoup(markup,'lxml')
fixed_html = soup.prettify()
print fixed_html
結(jié)果如下:
我們可以看到不僅
標簽補全完整,而且加入了和
標簽,進行格式化的輸出。下面我們就可以用findAll()方法查找我們想要的標簽或者內(nèi)容了。
我們先打印看一下findAll()得到的標簽都是什么?
tags = []
tag = soup.findAll()
for sub in tag:
tags.append(sub.name)
print tags
執(zhí)行結(jié)果如下:
我們得到了我們所需要的標簽,然后我們在findAll()中加入想查找的標簽。
例如:
sub = soup.findAll('p')
得到結(jié)果:
后續(xù)將會把該內(nèi)容應(yīng)用到爬蟲中,對爬蟲得到的網(wǎng)頁進行解析。
推薦一些python Beautiful Soup學(xué)習(xí)網(wǎng)址
前言:這幾天忙著寫分析報告,實在沒精力去研究django,雖然抽時間去看了幾遍中文文檔,還是等實際實踐后寫幾篇操作文章吧! 正文:以下是本人前段時間學(xué)習(xí)bs4庫找的一些網(wǎng)址,在學(xué)習(xí)的可以參考下,有點多 ...
python學(xué)習(xí)筆記--導(dǎo)入tab鍵自動補全功能的配置
今天開始學(xué)習(xí)Python,必須配置tab鍵補全功能 1.首先我們需要查看python的安裝路徑 [root@abc ~]# python Python 2.6.6 (r266:84292, Jan 2 ...
第三百六十八節(jié),Python分布式爬蟲打造搜索引擎Scrapy精講—elasticsearch(搜索引擎)用Django實現(xiàn)搜索的自動補全功能
第三百六十八節(jié),Python分布式爬蟲打造搜索引擎Scrapy精講—用Django實現(xiàn)搜索的自動補全功能 elasticsearch(搜索引擎)提供了自動補全接口 官方說明:https://www.e ...
Python中tab鍵自動補全功能的配置
新手學(xué)習(xí)Python的時候,如何沒有tab鍵補全功能,我感覺那將是一個噩夢,對于我們這種菜鳥來說,剛接觸python,對一切都不了解,還好有前輩們的指導(dǎo),學(xué)習(xí)一下,并記錄下來,還沒有學(xué)習(xí)這個功能小伙伴 ...
四十七 Python分布式爬蟲打造搜索引擎Scrapy精講—elasticsearch(搜索引擎)用Django實現(xiàn)搜索的自動補全功能
elasticsearch(搜索引擎)提供了自動補全接口 官方說明:https://www.elastic.co/guide/en/elasticsearch/reference/current/se ...
php實現(xiàn)網(wǎng)頁HTML標簽補全方法
如果你的網(wǎng)頁內(nèi)容的html標簽顯示不全,有些表格標簽不完整而導(dǎo)致頁面混亂,或者把你的內(nèi)容之外的局部html頁面給包含進去了,我們可以寫個函數(shù)方法來補全html標簽以及過濾掉無用的html標簽. php ...
網(wǎng)頁內(nèi)容的html標簽補全和過濾的兩種方法
網(wǎng)頁內(nèi)容的html標簽補全和過濾的兩種方法: 假設(shè)你的網(wǎng)頁內(nèi)容的html標簽顯示不全,有些表格標簽不完整而導(dǎo)致頁面混亂,或者把你的內(nèi)容之外的局部html頁面給包括進去了,我們能夠?qū)憘€函數(shù)方法來補全ht ...
python添加tab鍵自動補全功能
默認python是沒有tab鍵補全功能的: >>> import tab Traceback (most recent call last): File "
vim基礎(chǔ)學(xué)習(xí)之自動補全功能
本章我們學(xué)習(xí)自動補全功能1.自動補全優(yōu)先從當前的編輯區(qū)獲得補全列表例如:我們寫下如下內(nèi)容 aaaaa aabbb aaab 當我們再次輸入aa,然后我們按下Tab的時候,會彈出一個包含 aaaaa a ...
隨機推薦
Linux -- 文件統(tǒng)計常用命令
標簽(空格分隔): Linux sort -- 文件內(nèi)排序命令 sort將文件的每一行作為一個單位,相互比較,比較原則是從首字符向后,依次比較其ASCII碼. 按每行升序排序: sort seq.tx ...
JS實現(xiàn)漂亮的窗口拖拽效果(可改變大小、最大化、最小化、關(guān)閉)
轉(zhuǎn)自:http://www.jb51.net/article/73157.htm ? 這篇文章主要介紹了JS實現(xiàn)漂亮的窗口 ...
Uva 10339 - Watching Watches【數(shù)論,暴力】
題目鏈接:10339 - Watching Watches 題意:兩個時鐘,一個每天慢a秒,一個每天慢b秒,問兩鐘重新相遇的時刻 1圈有12 * 60 * 60秒,然后1圈 / abs(a - b), ...
[LeetCode] Kill Process 結(jié)束進程
Given?n?processes, each process has a unique?PID (process id)?and its?PPID (parent process id). Each ...
javascript函數(shù)調(diào)用中的方法調(diào)用模式
最近想起來之前看過的一種js語法,感覺很實用,但是又想不起來具體的寫法.然后在網(wǎng)上瀏覽了一段時間,終于成功的再現(xiàn)了記憶中的那種語法,嗯~,還是那個熟悉的味道! 代碼如下:
Wpf DataGrid 自動滾動到最后一行
if (mainDataGrid.Items.Count > 0) { var border = VisualTreeHelper.GetChild(mainDataGrid, 0) as De ...
洛谷P3247 最小公倍數(shù) [HNOI2016] 分塊+并查集
正解:分塊+并查集 解題報告: 傳送門! 真的好神仙昂QAQ,,,完全想不出來,,,還是太菜了QAQ 首先還是要說下,這題可以用K-D Tree亂搞過去(數(shù)據(jù)結(jié)構(gòu)是個好東西昂,,,要多學(xué)學(xué)QAQ),但 ...
stark組件開發(fā)之列表頁面預(yù)留鉤子方法。 可根據(jù)用戶的不同,顯示不同的列
要實現(xiàn),這個方法.子類中 list_diplay 這個列表, 就不能夠?qū)懰?他應(yīng)該是 可以根據(jù).用戶的不同,返回不同的值. 所以 就需要一個函數(shù), 可以進行判斷當前用戶是誰. 并且往這個列表中添加,他 ...
使用 Git &; Repo 下載代碼
客戶端安裝 Git 安裝 git,gitk 網(wǎng)絡(luò)連接正常的情況下: $ sudo apt-get install git-core gitk git-gui 不能上網(wǎng),有.deb安裝包的,請執(zhí)行: $ ...
隊列的實現(xiàn)——c++
一.介紹 隊列(Queue),是一種線性存儲結(jié)構(gòu).它有以下幾個特點:(01) 隊列中數(shù)據(jù)是按照"先進先出(FIFO, First-In-First-Out)"方式進出隊列的.(02 ...
總結(jié)
以上是生活随笔為你收集整理的html标签 补全方法 python,Python Beautiful Soup学习之HTML标签补全功能的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于vscode 中Live Serve
- 下一篇: 设置编程软件的背景颜色