2013-07-26 144 views
-5

我需要能夠提取標籤內的HTML內容,前提是我擁有​​網頁的網址。有什麼辦法可以使用Python來做到這一點?使用Python網頁抓取particualr標籤

+3

谷歌** python web刮**。 – Blender

+0

可能重複的[HTML抓取的選項?](http://stackoverflow.com/questions/2861/options-for-html-scraping) – Anthon

+0

重複。 http://stackoverflow.com/questions/1391657/python-web-scraping-involving-html-tags-with-attributes?rq=1 http://stackoverflow.com/questions/2081586/web-scraping-with -python?rq = 1 http://stackoverflow.com/questions/6969567/web-scraping-using-python?rq=1 – Logan

回答

0

有一個令人難以置信的拼搶庫Python中叫BeautifulSoup這將使你的生活變得更輕鬆:http://www.crummy.com/software/BeautifulSoup/

BeautifulSoup,您可以通過HTML標籤和/或HTML選擇通過CSS類名稱等屬性。它也能很好地處理壞html文檔,但是你需要閱讀關於它如何工作的文檔。這是非常令人驚訝的,你可以使用這個庫的幾行代碼進行刮擦。

玩得開心!

0

使用BeautifuSoup

這是很容易做到這一點只使用urllib來從網絡中的數據,然後使用BeautifulSoup解析出你需要

這裏的信息是一個例子:

import urllib2 
from bs4 import BeautifulSoup 

url = urllib2.urlopen('example.com') 

soup = BeautifulSoup(url) 

然後,你可以使用BeautifulSoup提取信息給定一個這樣的標籤

soup.find_all('tag_name') 

也有很多其他的方式來提取數據,這個網站將有所幫助Web-Scraping with bs4

+0

'from bs4 import *'應該從bs4導入BeautifulSoup'。另外,在傳遞給'BeautifulSoup'之前,你不需要讀取文件句柄。 – Blender

+0

好吧,如果你下載BeautifulSoup 4,你可以像那樣導入它 – Serial

+0

對不起,我正在談論星號。你不應該這樣做。 – Blender