1. 程式人生 > >Python 網頁解析器BeautifulSoup示例使用

Python 網頁解析器BeautifulSoup示例使用

Beautiful Soup 是一個可以從HTML或XML檔案中提取資料的Python庫.它能夠通過你喜歡的轉換器實現慣用的文件導航,查詢,修改文件的方式.Beautiful Soup會幫你節省數小時甚至數天的工作時間。

接下來,快事使用一些程式設計範例,使得儘快熟悉BeautifulSoup使用方法:

# coding:utf8
import re
from bs4 import  BeautifulSoup


html_doc = """
<html><head><title>The Dormouse's story</title></head>
<body>
<p class="title"><b>The Dormouse's story</b></p>

<p class="story">Once upon a time there were three little sisters; and their names were
<a href="http://example.com/elsie" class="sister" id="link1">Elsie</a>,
<a href="http://example.com/lacie" class="sister" id="link2">Lacie</a> and
<a href="http://example.com/tillie" class="sister" id="link3">Tillie</a>;
and they lived at the bottom of a well.</p>

<p class="story">...</p>
"""

soup = BeautifulSoup(html_doc, 'html.parser', from_encoding='utf-8')

print '獲取的所有連結'
links = soup.find_all('a')

for link in links:
    print link.name, link['href'], link.get_text()
    
print '獲取lacie的連結'
link_node = soup.find('a', href='http://example.com/lacie')
print link_node.name, link_node['href'], link_node.get_text() 

print '正則匹配'
link_node = soup.find('a', href=re.compile(r"ill"))
print link_node.name, link_node['href'], link_node.get_text()

print '獲取p段落文字'
p_note = soup.find('p', class_="title")
print p_note.name, p_note.get_text()

    

執行結果:
獲取的所有連結
a http://example.com/elsie Elsie
a http://example.com/lacie Lacie
a http://example.com/tillie Tillie
獲取lacie的連結
a http://example.com/lacie Lacie
正則匹配
a http://example.com/tillie Tillie
獲取p段落文字
p The Dormouse's story


相關推薦

Python 網頁解析BeautifulSoup示例使用

Beautiful Soup 是一個可以從HTML或XML檔案中提取資料的Python庫.它能夠通過你喜歡的轉換器實現慣用的文件導航,查詢,修改文件的方式.Beautiful Soup會幫你節省數小

python網頁解析利器——BeautifulSoup

python解析網頁,無出BeautifulSoup左右,此是序言 安裝 BeautifulSoup4以後的安裝需要用eazy_install,如果不需要最新的功能,安裝版本3就夠了,千萬別以為老版本就怎麼怎麼不好,想當初也是千萬人在用的啊。安裝很簡單 $ wg

[Python] [爬蟲] 6.批量政府網站的招投標、中標資訊爬取和推送的自動化爬蟲——網頁解析

目錄 1.Intro 2.Source 1.Intro 檔名:pageResolver.py 模組名:網頁解析器 引用庫: re lxml datetime sys retry

ubuntu下的python網頁解析庫的安裝——lxml, Beautiful Soup, pyquery, tesserocr

不同版本 utf-8 系統 pin dev sts one github html lxml 的安裝(xpath) pip3 install lxml 可能會缺少以下依賴: sudo apt-get install -y python3-dev build-e ssenti

最簡單的python命令解析

#!/usr/bin/env python # -*- coding: utf-8 -*- # Author: Twwy # Description: parse the argv in pyth

python爬蟲--解析網頁幾種方法之BeautifulSoup

first div xml html find 抓取 XML 格式 速度慢 析取 一.解析器概述 soup=BeautifulSoup(response.body) 對網頁進行析取時,並未規定解析器,此時使用的是python內部默認的解析器“html.parser”

Python開發爬蟲之BeautifulSoup解析網頁篇:爬取安居客網站上北京二手房數據

澳洲 pytho 目標 www. 委托 user info .get web 目標:爬取安居客網站上前10頁北京二手房的數據,包括二手房源的名稱、價格、幾室幾廳、大小、建造年份、聯系人、地址、標簽等。 網址為:https://beijing.anjuke.com/sale/

Python爬蟲解析網頁的三種方法,lxml、BeautifulSoup、re案例!

常用的類庫為lxml,BeautifulSoup,re(正則)  學習Python中有不明白推薦加入交流群                 號:960410445     &nb

python︱HTML網頁解析BeautifulSoup學習筆記

一、載入html頁面資訊 一種是網站線上的網頁、一種是下載下來的靜態網頁。 1、線上網頁 import requests from bs4 import BeautifulSoup headers={'User-Agent': 'Mozill

Python爬蟲包 BeautifulSoup 學習(十) 各種html解析的比較及使用

BeautifulSoup號稱Python中最受歡迎的HTML解析庫之一,但是這並不是唯一的選擇。 解析庫 lxml 這個庫可以用來解析HTML和XML文件,以非常底層的實現而聞名,大部分原始碼都是C語言寫的,雖然學習這東西要花一定的時間,但是它的處理

Brainfuck解析(Python)

sta str log inf span [] urn oba pen global cs global ip global ss #global sp global ds global bp global tab global out

Spring MVC-控制器(Controller)-參數方法名稱解析(Parameter Method Name Resolver )示例(轉載實踐)

title rop port img lsp java類 轉載 mvc export 以下內容翻譯自:https://www.tutorialspoint.com/springmvc/springmvc_parametermethodnameresolver.htm 說明

Spring MVC-視圖解析(View Resolverr)-內部資源查看解析(Internal Resource View Resolver)示例(轉載實踐)

ast mes 技術 子文件夾 schema html cati href tree 以下內容翻譯自:https://www.tutorialspoint.com/springmvc/springmvc_internalresourceviewresolver.htm 說

Spring MVC-視圖解析(View Resolverr)-多重解析(Multiple Resolver)示例(轉載實踐)

quest springmvc tab type elm utf servle err path 以下內容翻譯自:https://www.tutorialspoint.com/springmvc/springmvc_multiple_resolver_mapping.htm

python爬蟲--解析網頁幾種方法之正則表達式

ima 3.5 ref string tex href quest user lin 1、正則表達式 正則表達式是一個特殊的字符序列,它能幫助你方便的檢查一個字符串是否與某種模式匹配。 re 模塊使 Python 語言擁有全部的正則表達式功能。 re.match函數 re.

Python爬蟲(十四)_BeautifulSoup4 解析

標準 屬性 文檔轉換 可選 blog 格式 問題 但是 結構 CSS選擇器:BeautifulSoup4 和lxml一樣,Beautiful Soup也是一個HTML/XML的解析器,主要的功能也是如何解析和提取HTML/XML數據。 lxml只會局部遍歷,而Beauti

python爬蟲之真實世界中的網頁解析

爬蟲 兩種 del http協議 head 常用 nbsp 是我 返回 Request和Response Request是我們平常瀏覽網頁,向網站所在的服務器發起請求,而服務器收到請求後,返回給我們的回應就是Response,這種行為就稱為HTTP協議,也就是客戶端(瀏覽器

Python 裝飾簡單示例

裝飾器簡單裝飾器示例: def servlet(func): print("into servlet")#1 print(servlet)#2 def foo(): print("into foo")#7 print(func)#8,真正的bar函數

Python解析

部分 .html https diff bsp java字節碼 解釋器 擴展名 wikipedia 當我們編寫Python代碼時,我們得到的是一個包含Python代碼的以.py為擴展名的文本文件。要運行代碼,就需要Python解釋器去執行.py文件。 由於整個Python語

Python爬蟲開發【第1篇】【beautifulSoup4解析

res tail {} nbsp catalog XML select 解析器 enc CSS 選擇器:BeautifulSoup4 Beautiful Soup 也是一個HTML/XML的解析器,主要的功能也是如何解析和提取 HTML/XML 數據。 pip 安裝:pip