91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python如何抓取多種類型的頁面

發布時間:2021-06-28 15:05:04 來源:億速云 閱讀:138 作者:小新 欄目:開發技術

這篇文章主要介紹了python如何抓取多種類型的頁面,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

通過URL

一個網站中所有的博客文章可能都會包含一個 URL(例如 http://example.com/blog/title-of-post)。

通過網站中存在或者缺失的特定字段

如果一個頁面包含日期,但是不包含作者名字,那你可以將其歸類 為新聞稿。如果它有標題、主圖片、價格,但是沒有主要內容,那么它 可能是一個產品頁面。

通過頁面中出現的特定標簽識別頁面

即使不抓取某個標簽內的數據,你仍然可以利用這個標簽。你的爬 蟲可以尋找類似于 <div id="related-products"> 這樣的元素來識 別產品頁面,即便是爬蟲對相關產品的內容并不感興趣。

為了跟蹤多個頁面類型,你需要在 Python 中有多個類型的頁面對象。 這通過兩種方式來實現。

如果頁面都是相似的(它們基本上都是相同類型的內容),你可能需要 在現有的網頁對象中加入一個 pageType 屬性:

class Website:
"""所有文章/網頁的共同基類"""
def __init__(self, type, name, url, searchUrl, resultListing,
resultUrl, absoluteUrl, titleTag, bodyTag):
self.name = name
self.url = url
self.titleTag = titleTag
self.bodyTag = bodyTag
self.pageType = pageType

如果你在一個類 SQL 的數據庫中對這些頁面進行排序,這種模式類型 意味著這些頁面應該被存放在同一張表中,并且加入一個額外的 pageType 列。

如果你抓取的頁面或內容各不相同(它們包含不同類型的字段),就需 要為每個頁面類型創建一個新的對象。當然,有些東西是所有網頁共有 的——它們都有一個 URL,也可能都有一個名稱或者頁面標題。這種 情況非常適合用子類:

class Website:
"""所有文章/網頁的共同基類"""

def __init__(self, name, url, titleTag):
self.name = name
self.url = url
self.titleTag = titleTag

這不是一個由你的爬蟲直接使用的對象,而是將被你的頁面類型引用的 對象:

class Product(Website):
"""產品頁面要抓取的信息"""
def __init__(self, name, url, titleTag, productNumber, price):    
Website.__init__(self, name, url, TitleTag)
self.productNumberTag = productNumberTag
self.priceTag = priceTag
class Article(Website):
"""文章頁面要抓取的信息"""
def __init__(self, name, url, titleTag, bodyTag, dateTag):
Website.__init__(self, name, url, titleTag)
self.bodyTag = bodyTag
self.dateTag = dateTag

這個產品頁面擴展了Website基類,并且加入了僅適用于產品的productNumber和price屬性,而Article類加入了body和date屬性,這兩個屬性是不適用于產品的。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“python如何抓取多種類型的頁面”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

随州市| 通榆县| 靖江市| 广昌县| 寿阳县| 广饶县| 永顺县| 梁平县| 沙雅县| 河西区| 夏河县| 博客| 盐津县| 贞丰县| 富顺县| 许昌县| 虹口区| 车险| 泽普县| 政和县| 稷山县| 璧山县| 望都县| 平顶山市| 库伦旗| 滕州市| 姚安县| 稷山县| 芜湖县| 安宁市| 徐州市| 汝南县| 余干县| 道真| 泽州县| 易门县| 伊吾县| 大荔县| 临夏县| 天等县| 鹿泉市|