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